客戶數據庫10.1.0.4碰到這個ORA-600錯誤。
詳細錯誤信息為:
Sat Feb 4 13:04:31 2006
ALTER DATABASE MOUNT
Sat Feb 4 13:04:31 2006
Errors in file /oracle/admin/orcl/bdump/orcl_ckpt_122986.trc:
ORA-00600: internal error code, arguments: [kccida_kccsgfsz], [], [], [], [], [], [], []
Sat Feb 4 13:04:32 2006
Errors in file /oracle/admin/orcl/bdump/orcl_ckpt_122986.trc:
ORA-00600: internal error code, arguments: [kccida_kccsgfsz], [], [], [], [], [], [], []
Sat Feb 4 13:04:32 2006
CKPT: terminating instance tb due to error 470
Instance terminated by CKPT, pid = 122986
查詢MOS發現和文檔Alter Database Mount Returns ORA-3113 And ORA-600 [kccida_kccsgfsz] [ID 315112.1]描述的問題一致。導致問題的原因是客戶在遷移或斷電等因素導致控制文件和數據文件的格式不兼容。
在下次重啟時,告警日志中出現的下面的信息也說明了這一點:
Sat Feb 4 13:20:15 2006
alter database mount
Sat Feb 4 13:20:15 2006
Controlfile identified with block size 16384
顯然導致這個問題的原因和客戶之前的恢復或遷移操作有關。如果如bug所述,數據庫是直接從其他平臺拷貝到當前環境下,那么正確的方法肯定是通過邏輯備份EXP/EXPDP進行數據庫的遷移。
而如果和當前的情況類似,由于異常導致控制文件的損壞,可以考慮從備份中進行恢復或直接重建控制文件。