ORACLE-00600 4194 斷電undo損壞處理過程
接上面一篇文章,資料庫斷電後,啟動到mount狀態時報ORA-00600: internal error code, arguments: [kcratr1_lastbwr]
錯誤,然後按 startup mount; recover database; alter database open; 開啟後,
但查詢相關檢視時報ora-03113錯誤, desc 某個表名時,也報強制斷開連線錯誤
然後就查alert.log日誌檔案,裡面內容如下:
Tue Mar 17 17:10:40 2009
Doing block recovery for file 2 block 2610
Block recovery from logseq 105001, block 78 to scn 7719204736317
Tue Mar 17 17:10:40 2009
Recovery of Online Redo Log: Thread 1 Group 3 Seq 105001 Reading mem 0
Mem# 0 errs 0: D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG
Block recovery completed at rba 105001.86.16, scn 1797.1148505406
Doing block recovery for file 2 block 73
Block recovery from logseq 105001, block 78 to scn 7719204736305
Tue Mar 17 17:10:40 2009
Recovery of Online Redo Log: Thread 1 Group 3 Seq 105001 Reading mem 0
Mem# 0 errs 0: D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG
Block recovery completed at rba 105001.78.16, scn 1797.1148505394
Tue Mar 17 17:10:41 2009
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_smon_1856.trc:
ORA-01595: error freeing extent (3) of rollback segment (5))
ORA-00607: Internal error occurred while making a change to a data block
ORA-00600: internal error code, arguments: [4194], [10], [10], [], [], [], [], []
不斷的報ORA-00600 4194錯誤,第一個想到的就是 undo已經損壞
需要重建undo,用隱含引數開啟了,如果有備份的話,就從備份中恢復了,這裡介紹下用隱含引數打
開的方法
首先確定有多少undo回滾段,可以從alert.log日誌中查詢,如果有多個回滾段,就全部列上去
關閉資料庫,修改init
修改init
._corrupted_rollback_segments='_SYSSMU1$','_SYSSMU2$','_SYSSMU3$','_SYSSMU4$','_SYSSMU5$'
用修改的init
startup pfile=init
這時能正常啟動
此時可以重新建立新的UNDO表空間,刪除出現問題的表空間,修改引數檔案,由引數檔案生成新的spfile,重新啟動資料庫:
SQL> create undo tablespace undotbs1 Tablespace created. SQL> alter system set undo_tablespace=undotbs1; System altered.
Tablespace dropped. |
修改引數檔案,變更undo表空間,並取消_corrupted_rollback_segments設定:
*.undo_tablespace='UNDOTBS1' |
由引數檔案建立spfile檔案。
SQL> create spfile from pfile; File created. |
此時資料庫恢復正常,通常建議立即全庫exp,然後重新建庫,再imp恢復資料庫。
最近經歷了一次,ups供電不足導致資料庫異常關閉而損壞undo的事件。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7199859/viewspace-571416/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- undo表空間損壞的處理過程
- UNDO表空間損壞的處理
- Undo和Current Online Redo損壞的處理方法
- Current online Redo 和 Undo 損壞的處理方法
- 沒有備份的情況下處理undo損壞
- 處理塊損壞
- Oracle 無備份情況下undo檔案損壞處理Oracle
- 【Oracle】Current online Redo 和 Undo 損壞的處理方法Oracle
- MySQL資料庫INNODB表損壞修復處理過程分享MySql資料庫
- undo 檔案損壞
- Nucleus中斷處理過程!!!!
- UNDO表空間損壞,爆滿,ORA-600[4194]/[4193]錯誤解決
- 段頭損壞的處理
- ORACLE資料庫壞塊的處理 (一次壞快處理過程)Oracle資料庫
- 第7章 處理塊損壞
- MYSQL匯入中斷處理過程MySql
- oracle10g rac 表決盤損壞、ocr損壞處理Oracle
- 一次壞塊的處理過程(一)
- 一次壞塊的處理過程(二)
- 一次壞塊的處理過程 [轉]
- undo檔案丟失或損壞
- RAC磁碟頭損壞問題處理
- ORA-01578(資料塊損壞)跳過壞塊處理辦法
- ovm安裝過程及中斷處理
- oracle - redo 損壞或刪除處理方法Oracle
- Linux 核心處理中斷全過程解析Linux
- 一次ORACLE資料庫undo壞塊處理Oracle資料庫
- 處理undo tablespace損環_rman-06054_一則
- 同事處理異常斷電資料庫狀態變為SUSPECT過程資料庫
- (轉)oracle redolog損壞的處理辦法Oracle Redo
- Oracle資料庫UNDO損壞後的恢復Oracle資料庫
- UNDO 表空間檔案損壞的恢復
- win10ie核心損壞怎麼修復_win10電腦ie顯示核心丟失或損壞處理方法Win10
- Online Redo Log損壞處理實驗(上)
- Online Redo Log損壞處理實驗(中)
- Online Redo Log損壞處理實驗(下)
- sysaux表空間檔案損壞的處理(zt)UX
- 【資料安全】一次驚心動魄的ASM磁碟頭損壞故障處理過程帶來的深思ASM