系統crash掉導致ORA-00600的處理
國慶期間重新整理了機房,一堆機器移行換位,估計oracle沒有關閉就直接拔電源了。到今天開發人員報告一臺測試的db連不上,於是處理開始。
[@more@]因為這臺機器的資料庫是開機自動啟動的,直接登陸上去檢視listener狀態,正常,然後登陸到資料庫中檢視資料庫狀態:
SQL> select open_mode from v$database;
OPEN_MODE
----------
MOUNTED
奇怪,於是先把資料庫關閉,然後重新啟動,報錯如下:
SQL> startup
ORACLE instance started.
Total System Global Area 1375731712 bytes
Fixed Size 1260780 bytes
Variable Size 603980564 bytes
Database Buffers 754974720 bytes
Redo Buffers 15515648 bytes
Database mounted.
ORA-00600: internal error code, arguments: [kcratr1_lastbwr], [], [], [], [], [], [], []
檢視ALERT日誌,發現
Errors in file /opt/oracle/admin/billdb/udump/billdb_ora_7186.trc:
ORA-00600: internal error code, arguments: [kcratr1_lastbwr], [], [], [], [], [], [], []
ORA-600 signalled during: ALTER DATABASE OPEN...
開啟上面提到的trace檔案
*** SERVICE NAME:() 2007-10-11 10:08:49.493
*** SESSION ID:(989.3) 2007-10-11 10:08:49.493
Successfully allocated 2 recovery slaves
Using 543 overflow buffers per recovery slave
Thread 1 checkpoint: logseq 67179, block 2, scn 2132065607
cache-low rba: logseq 67179, block 5453
on-disk rba: logseq 67179, block 5828, scn 2132066974
Starting CRASH recovery for thread 1 sequence 67180 block 1
Thread 1 current log 5
Scanning log 5 thread 1 sequence 67179
Scanning log 6 thread 1 sequence 67178
Cannot find online redo log for thread 1 sequence 67180
start recovery at logseq 67179, block 5453, scn 0
----- Redo read statistics for thread 1 -----
Read rate (ASYNC): 252Kb in 0.03s => 8.22 Mb/sec
Total physical reads: 252Kb
Longest record: 9Kb, moves: 0/341 (0%)
Change moves: 1/24 (4%), moved: 0Mb
Longest LWN: 35Kb, moves: 0/110 (0%), moved: 0Mb
Last redo scn: 0x0000.7f14c2af (2132066991)
----------------------------------------------
******** WRITE VERIFICATION FAILED ********
File 15 Block 89 (rdba 0x3c00059)
BWR version: 0x0000.7f14c25e.01 flg: 0x04
Disk version: 0x0000.7f14c12d.01 flag: 0x04
*** 2007-10-11 10:08:49.541
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [kcratr1_lastbwr], [], [], [], [], [], [], []
Current SQL statement for this session:
ALTER DATABASE OPEN
上面提示說貌似找不到67180的日誌了,去日誌目錄看看明明在的,於是跑到metalink上去,查到如下結果:
Changes
There was a disk problem that caused the database to crash.
Cause
Oracle is unable to perform instance recover but it works when is invoked manually.
Solution
Mount the database and issue a recover statement
SQL> startup mount;
SQL> recover database;
SQL> alter database open
於是照搬上面的步驟,手工恢復後問題解決。
但搞不明白為啥oracle自己不能恢復,手工恢復就可以呢?下一步還是查查硬體錯誤吧。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25016/viewspace-975790/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- IOS系統閃退異常(Crash)捕獲處理iOS
- 處理WKContentView雙擊crashView
- 雲伺服器系統盤滿導致桌面檔案不見了的處理方法伺服器
- 如何處理快取導致的無效曝光快取
- 指令碼處理iOS的Crash日誌指令碼iOS
- 故障分析 | MySQL : slave_compressed_protocol 導致 crashMySqlProtocol
- 索引壞掉導致ORA-07445索引
- SQLServer的tempdb暴增導致磁碟消耗的處理方案SQLServer
- jenkins導致硬碟佔用滿了如何處理Jenkins硬碟
- sqlldr標準輸出未處理導致批處理掛起問題SQL
- 什麼原因會導致raid掉陣AI
- 使用資料庫處理併發可能導致的問題資料庫
- ORACLE DATAGUARD災備歸檔空間滿導致的ORA-00600 [2619]Oracle
- openGauss 由於RemoveIPC未關閉導致資料庫crashREM資料庫
- 儲存崩潰導致資料丟失如何處理
- 故障分析 | MySQL 5.7 使用臨時表導致資料庫 CrashMySql資料庫
- Runtime PM 處理不當導致的 external abort on non-linefetch 案例分享
- 故障分析 | MySQL convert 函式導致的字符集報錯處理MySql函式
- 如何在 Swift 中優雅的處理閉包導致的迴圈引用Swift
- insert變數太多導致例項重啟ORA-00600、ORA-01006變數
- 介面自動化覆蓋的功能,但是導致漏測瞭如何處理
- OGG相關的CPATURE導致SYSAUX表空間異常暴增處理UX
- ZooKeeper的系統列印Log的處理方法
- 記一次非同步處理導致Jetty Request物件洩漏非同步Jetty物件
- NFS導致的目標端檔案系統不可讀NFS
- 企業使用ERP系統導致失敗的因素所在
- DevExpress 的LayoutControl控制元件導致資源無法釋放的問題處理devExpress控制元件
- 併發請求導致的業務處理安全風險及解決方案求導
- 故障分析 | 手動 rm 掉 binlog 導致主從報錯
- win10系統wif經常掉線怎麼處理_win10無線網間歇性掉線如何修復Win10
- nfs導致的作業系統目錄無法訪問NFS作業系統
- 導致linux系統快取高的常見原因有哪些Linux快取
- 關於Cordova框架對URL攔截導致通訊丟失問題的處理框架
- 【譯】Gradle 的依賴關係處理不當,可能導致你編譯異常Gradle編譯
- 誤升級GLIBC導致系統崩潰之後
- Oracle 12c因bug導致ORA-04031問題處理過程Oracle
- node啟動程式-清理由於崩潰導致的沒有關掉的程式
- 重灌系統導致分割槽丟失的資料恢復案例資料恢復