天天看點

ORA-00600: internal error code, arguments: [kcratr_scan_lastbwr]錯誤處理

機器斷電以後,重新啟動報如下錯誤:

[oracle@zhuxg ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Wed May 1 11:28:49 2013

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup

ORACLE instance started.

Total System Global Area  276197376 bytes

Fixed Size                  1344400 bytes

Variable Size             171969648 bytes

Database Buffers           96468992 bytes

Redo Buffers                6414336 bytes

Database mounted.

ORA-00600: internal error code, arguments: [kcratr_scan_lastbwr], [], [], [],[], [], [], [], [], [], [], []

在alert日志中有如下報錯資訊:

Wed May 01 08:21:09 2013

Starting ORACLE instance (normal)

LICENSE_MAX_SESSION = 0

LICENSE_SESSIONS_WARNING = 0

Picked latch-free SCN scheme 2

:

Aborting crash recovery due to error 600

Errors in file /u01/app/oracle/diag/rdbms/asmdb/ASMDB/trace/ASMDB_ora_5210.trc:

ORA-00600: internal error code, arguments: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []

ORA-600 signalled during: ALTER DATABASE OPEN /* db agent *//* {0:0:2} */...

在ASMDB_ora_5210.trc檔案中有如下的資訊:

..................

17755E0 03C10222 096F780B 36380113 6029D938  ["....xo...868.)`]

17755F0 D843E0FF 7CAA8000 02C1B000 88DC0248  [..C....|....H...]

Reading datafile '+ZHUXGASM/asmdb/datafile/undotbs1.258.813246367' for corruption at rdba: 0x00c00858 (file 3, block 2136)

Reread (file 3, block 2136) found same corrupt data (logically corrupt)

******** WRITE VERIFICATION FAILED ********

由此我們知道是因為資料庫當機之後,出現了邏輯壞塊 (logically corrupt),是以需要進行媒體恢複。

SQL> shutdown immediate;

ORA-01109: database not open

Database dismounted.

ORACLE instance shut down.

SQL> startup mount;

SQL> recover database;

Media recovery complete.

SQL> alter database open;

Database altered.

媒體恢複之後,再打開資料庫就好了。