Oracle資料庫處理壞塊問題常用命令
1.透過DBV 檢查檔案是否有壞塊
例如:檢查 cjc_index01.dbf 檔案
dbv file='/oradata/nc/cjc_index01.dbf'
2.檢查壞塊所屬段型別
例如:file_id=6(cjc_index01.dbf),block=459202
select tablespace_name, segment_type, owner, segment_name from dba_extents where file_id = 6 and 459202 between block_id and block_id + blocks - 1;
3.rman恢復壞塊
恢復方式:基於資料塊的Rman 恢復
檢查datafile=6的所有壞塊
檢查壞塊位置
RMAN>backup validate datafile 6;
驗證壞塊
select FILE#,BLOCK#,BLOCKS,CORRUPTION_CHANGE#,CORRUPTION_TYPE from v$database_block_corruption where file#=6;
修復壞塊
RMAN>blockrecover datafile 6 block 459202 from backupset;
如果有多個壞塊,可以用逗號分開,例如:
RMAN>blockrecover datafile 6 block 459202,643867,1963727;
4.如果沒有RMAN備份
索引型別壞塊,可以選擇重建索引;
資料型別壞塊,可以選擇跳過壞塊匯出資料,重建表。
如果是透過exp備份不能直接備份出有壞塊的表,需要設定內部事件
ALTER SYSTEM SET EVENTS='10231 trace name context forever,level 10';
透過expdp 備份可以直接跳過壞塊;
也可以使用10231事件忽略壞塊,然後使用CTAS方式重建表最後rename table,別忘記rebuild index,例如:
alter session SET EVENTS '10231 trace name context forever,level 10'; create table tab_new as select * from tab; rename tab to tab_bak; rename tab_new to new; select 'alter index '||index_name||' rebuild;' from user_ind_columns where table_name='T1'; alter session SET EVENTS '10231 trace name context off';
###chenjuchao 20240308###
來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/29785807/viewspace-3008466/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何處理Oracle資料庫中的壞塊問題(轉)Oracle資料庫
- 一次ORACLE資料庫undo壞塊處理Oracle資料庫
- Oracle壞塊處理Oracle
- Oracle資料庫出現ORA-19566 LOB壞塊的處理記錄Oracle資料庫
- Oracle資料庫中的逐行處理問題NEOracle資料庫
- linux處理oracle問題常用命令LinuxOracle
- Oracle日常問題處理-資料庫無法啟動Oracle資料庫
- Oracle資料庫壞塊典型案例分析Oracle資料庫
- 【BLOCK】Oracle壞塊處理命令參考BloCOracle
- 一個簡單易用的資料庫壞塊處理方案資料庫
- Oracle資料庫壞塊典型案例擴充Oracle資料庫
- Oracle日常問題-壞塊修復Oracle
- 銀河麒麟系統安裝ORACLE資料庫問題處理Oracle資料庫
- MySQL資料庫InnoDB壞頁處理修復MySql資料庫
- RAC磁碟頭損壞問題處理
- 資料處理--pandas問題
- openGauss資料庫xlog目錄滿問題處理資料庫
- pyinstaller打包cx_Oracle庫問題處理記錄Oracle
- Oracle資料庫常用命令Oracle資料庫
- 資料庫主機重啟卡住問題處理分享資料庫
- oracle SP2-問題處理Oracle
- 【資料庫資料恢復】Oracle資料庫檔案出現壞塊報錯的資料恢復案例資料庫資料恢復Oracle
- python中多程式處理資料庫連線的問題Python資料庫
- 使用資料庫處理併發可能導致的問題資料庫
- oracle 普通表空間資料檔案壞塊Oracle
- Oracle日常問題處理ORA-04031Oracle
- ORACLE問題處理十個指令碼Oracle指令碼
- oracle壞塊(二)Oracle
- 達夢資料庫日常管理之問題處理筆記1資料庫筆記
- X7一體機資料庫遷移問題處理資料庫
- MySQL資料庫INNODB表損壞修復處理過程分享MySql資料庫
- 大資料處理需留意哪些問題大資料
- ES同步Mysql資料庫(包括出現問題怎麼處理哦)MySql資料庫
- Oracle資料庫啟動問題彙總(一)Oracle資料庫
- 伺服器Oracle資料庫損壞修復伺服器Oracle資料庫
- oracle遊標批次處理資料Oracle
- 【LINUX】Oracle資料庫 linux磁碟頭資料損壞修復LinuxOracle資料庫
- 一次壞塊的處理過程(一)