日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle模块损坏,Oracle中模拟及修复数据块损坏

發(fā)布時間:2025/3/21 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle模块损坏,Oracle中模拟及修复数据块损坏 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Oracle中模擬及修復數據塊損壞,itpub link:

http://www.itpub.net/showthread.php?threadid=201766[@more@]Oracle中模擬及修復數據塊損壞

itpub link:

http://www.itpub.net/showthread.php?threadid=201766

1.插入數據

E:Oracleora92bin>sqlplus "/ as sysdba"

SQL*Plus: Release 9.2.0.4.0 - Production on 星期一 3月 8 20:27:15 2004

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

連接到:

Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.4.0 - Production

SQL> select name from v$datafile;

NAME

--------------------------------------------------------------------------------

E:ORACLEORADATAEYGLESYSTEM01.DBF

E:ORACLEORADATAEYGLEUNDOTBS01.DBF

E:ORACLEORADATAEYGLEEYGLE01.DBF

SQL> create tablespace block

2 datafile 'e:oracleoradataeygleblock.dbf'

3 size 1M

4 extent management local;

表空間已創(chuàng)建。

SQL> alter user eygle default tablespace block;

用戶已更改。

SQL> alter user eygle quota unlimited on block;

用戶已更改。

SQL> connect eygle/eygle

已連接。

SQL> create table t as select * from dba_users;

表已創(chuàng)建。

SQL> insert into t select * from t;

已創(chuàng)建8行。

SQL> /

已創(chuàng)建16行。

SQL> /

已創(chuàng)建32行。

SQL> /

已創(chuàng)建64行。

SQL> /

已創(chuàng)建128行。

SQL> /

已創(chuàng)建256行。

SQL> /

已創(chuàng)建512行。

SQL> /

已創(chuàng)建1024行。

SQL> /

已創(chuàng)建2048行。

SQL> /

已創(chuàng)建4096行。

SQL> /

insert into t select * from t

*

ERROR 位于第 1 行:

ORA-01653: 表EYGLE.T無法通過8(在表空間BLOCK中)擴展

SQL> commit;

提交完成。

SQL> alter system checkpoint;

系統(tǒng)已更改。

SQL> select count(*) from t;

COUNT(*)

----------

8192

SQL> connect / as sysdba

已連接。

SQL> shutdown immediate

數據庫已經關閉。

已經卸載數據庫。

ORACLE 例程已經關閉。

2.損壞數據文件

關閉數據庫后用Ultredit編輯數據文件,隨便更改幾個字符.然后啟動數據庫.

SQL> startup

ORACLE 例程已經啟動。

Total System Global Area 101785252 bytes

Fixed Size 454308 bytes

Variable Size 75497472 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

數據庫裝載完畢。

數據庫已經打開。

SQL> select count(*) from eygle.t;

select count(*) from eygle.t

*

ERROR 位于第 1 行:

ORA-01578: ORACLE 數據塊損壞(文件號4,塊號35)

ORA-01110: 數據文件 4: 'E:ORACLEORADATAEYGLEBLOCK.DBF'

SQL>

此時如果查詢該表,會出現錯誤,數據塊損壞無法讀取.

有個內部工具BBED也可以用來編輯數據塊的內容

3.使用DBV檢查數據文件

E:Oracleoradataeygle>dbv file=block.dbf blocksize=8192

DBVERIFY: Release 9.2.0.4.0 - Production on 星期一 3月 8 20:48:50 2004

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

DBVERIFY - 驗證正在開始 : FILE = block.dbf

標記為損壞的頁35

***

Corrupt block relative dba: 0x01000023 (file 4, block 35)

Bad check value found during dbv:

Data in bad block -

type: 6 format: 2 rdba: 0x01000023

last change scn: 0x0000.00049097 seq: 0x1 flg: 0x06

consistency value in tail: 0x90970601

check value in block header: 0xd6cb, computed block checksum: 0x2c0a

spare1: 0x0, spare2: 0x0, spare3: 0x0

***

標記為損壞的頁69

***

Corrupt block relative dba: 0x01000045 (file 4, block 69)

Bad check value found during dbv:

Data in bad block -

type: 6 format: 2 rdba: 0x01000045

last change scn: 0x0000.00049097 seq: 0x1 flg: 0x06

consistency value in tail: 0x90970601

check value in block header: 0x33d1, computed block checksum: 0x653

spare1: 0x0, spare2: 0x0, spare3: 0x0

***

DBVERIFY - 驗證完成

檢查的頁總數 :128

處理的頁總數(數據):117

失敗的頁總數(數據):0

處理的頁總數(索引):0

失敗的頁總數(索引):0

處理的頁總數(其它):9

處理的總頁數 (段) : 0

失敗的總頁數 (段) : 0

空的頁總數 :0

標記為損壞的總頁數:2

匯入的頁總數 :0

dbv檢測到壞塊.

4.尋求恢復

在這種情況下,如果有備份,需要從備份中恢復

如果沒有備份,那么壞塊部分的數據肯定要丟失了

在這個時候導出是不允許的:

E:>exp eygle/eygle file=t.dmp tables=t

Export: Release 9.2.0.4.0 - Production on 星期一 3月 8 20:54:15 2004

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

連接到: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.4.0 - Production

已導出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

即將導出指定的表通過常規(guī)路徑 ...

. . 正在導出表 T

EXP-00056: 遇到 ORACLE 錯誤 1578

ORA-01578: ORACLE 數據塊損壞(文件號4,塊號35)

ORA-01110: 數據文件 4: 'E:ORACLEORADATAEYGLEBLOCK.DBF'

導出成功終止,但出現警告。

5.恢復步驟

當然,對于不同的情況需要區(qū)別對待

首先你需要檢查損壞的對象,使用以下SQL:

SQL> SELECT tablespace_name, segment_type, owner, segment_name

2 FROM dba_extents

3 WHERE file_id = 4

4 and 35 between block_id AND block_id + blocks - 1

5 ;

TABLESPACE_NAME SEGMENT_TYPE OWNER SEGMENT_NAME

---------------------------------------------------------------------------

BLOCK TABLE EYGLE T

如果損失的是數據,ok

我們可以設置內部事件,使exp跳過這些損壞的block

SQL> ALTER SYSTEM SET EVENTS='10231 trace name context forever,level 10';

系統(tǒng)已更改。

note:

ALTER SYSTEM SET EVENTS='10231 trace name context forever,level 10' ;

內部事件,設置在全表掃描時跳過損壞的數據塊.

然后我們可以導出未損壞的數據

SQL> host

Microsoft Windows XP [版本 5.1.2600]

(C) 版權所有 1985-2001 Microsoft Corp.

E:

E:>exp eygle/eygle file=t.dmp tables=t

Export: Release 9.2.0.4.0 - Production on 星期一 3月 8 20:57:13 2004

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

連接到: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.4.0 - Production

已導出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

即將導出指定的表通過常規(guī)路徑 ...

. . 正在導出表 T 8036 行被導出

在沒有警告的情況下成功終止導出。

這時候數據成功導出.

然后我們可以drop table,recreate,然后導入數據

本例中

我們損失了

8192 - 8036 = 156 行數據

SQL> connect eygle/eygle

已連接。

SQL> drop table t;

表已丟棄。

SQL> host

Microsoft Windows XP [版本 5.1.2600]

(C) 版權所有 1985-2001 Microsoft Corp.

E:Oracleora92bin>cd

E:>imp eygle/eygle file=t.dmp tables=t

Import: Release 9.2.0.4.0 - Production on 星期一 3月 8 21:12:38 2004

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

連接到: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.4.0 - Production

經由常規(guī)路徑導出由EXPORT:V09.02.00創(chuàng)建的文件

已經完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的導入

. 正在將EYGLE的對象導入到 EYGLE

. . 正在導入表 "T" 8036行被導入

成功終止導入,但出現警告。

E:>exit

SQL> select count(*) from t;

COUNT(*)

----------

8036

完成數據恢復

來自 “ ITPUB博客 ” ,鏈接:http://blog.itpub.net/509190/viewspace-819829/,如需轉載,請注明出處,否則將追究法律責任。

總結

以上是生活随笔為你收集整理的oracle模块损坏,Oracle中模拟及修复数据块损坏的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 一区二区三区 欧美 | 日本美女视频一区 | 欧美精彩视频 | 土耳其xxxx性hd极品 | 亚洲精品乱码 | 精品动漫一区二区三区在线观看 | 老熟妇仑乱一区二区av | 日韩一区二区三区四区五区 | 国产精品欧美综合 | 日本人和亚洲人zjzjhd | 四虎影库在线播放 | 97在线观看视频免费 | 自拍第二页 | 日本网站黄色 | 国产精品久久久无码一区 | 美女张开腿让男人桶爽 | 92久久精品一区二区 | 亚洲性视频| 91极品国产| 欧美午夜精品一区二区三区电影 | 91成人免费电影 | 男女视频免费观看 | 欧美一级片在线视频 | 粉嫩久久99精品久久久久久夜 | 日韩插插插 | 婷婷亚洲综合五月天小说 | 午夜在线成人 | 亚洲高清自拍 | 黄页网站在线播放 | 中国美女性猛交 | 黄色精品免费 | 91av国产视频 | 极品新婚夜少妇真紧 | 亚洲欧洲色 | 九九热视| 男女黄色片| 神秘电影永久入口 | 男人懂的网站 | 友田真希一区二区 | 国产又白又嫩又爽又黄 | 毛片在线免费观看网站 | 欧美性生交大片免费看app麻豆 | 天堂资源中文在线 | 欧美色一区二区三区在线观看 | 成人毛片100部免费看 | 欧洲亚洲一区二区三区 | a级在线观看视频 | 久久麻豆精品 | 久草国产在线观看 | 极品白嫩少妇无套内谢 | 精品资源成人 | 久久九九国产视频 | jav中文字幕 | 亚洲AV无码久久精品色三人行 | 亚洲最大看欧美片网站 | 91午夜在线观看 | 欧美视频网站 | 一区二区三区视频网站 | 99黄色| 男人扒女人添高潮视频 | 日韩黄色免费视频 | 国产成人精品一区二区三区四区 | 午夜日韩 | 24小时日本在线www免费的 | 国产精品1区2区 | 专干老肥女人88av | 51免费看成人啪啪片 | 亚洲欲| 国产色婷婷一区二区三区竹菊影视 | wwwxxxx欧美 | 91网在线看 | 国产黄色大片在线观看 | 黄网站色视频免费观看 | 国产69精品久久久 | 天天做日日干 | 成人影| 69视频免费看| 97在线观看视频 | 国产99爱| 欧类av怡春院 | 97视频一区二区三区 | 精品福利片 | 欧美乱大交xxxxx潮喷l头像 | 国产毛片一区二区 | 天天插美女 | 国产激情视频在线观看 | 桃谷绘里香番号 | 亚洲综合五区 | 91在线资源 | 午夜伦理福利视频 | 蜜臀久久99精品久久一区二区 | 极品熟妇大蝴蝶20p 国产偷自拍视频 | 亚洲精品777 | 视频一区中文字幕 | 久久久性色精品国产免费观看 | 日本乱子伦xxxx | 啪视频网站 | 二级毛片在线观看 | 熟女一区二区三区四区 |