联系:手机/微信(+86 17813235971) QQ(107644445)
作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]
接到客户恢复请求,数据库启动报ORA-600 2662错误
Fri Apr 24 19:52:58 2020 alter database open resetlogs RESETLOGS is being done without consistancy checks. This may result in a corrupted database. The database should be recreated. RESETLOGS after incomplete recovery UNTIL CHANGE 15491509441794 Resetting resetlogs activation ID 1460987657 (0x5714e709) Fri Apr 24 19:52:59 2020 Setting recovery target incarnation to 3 Fri Apr 24 19:52:59 2020 Assigning activation ID 1566342598 (0x5d5c7dc6) Thread 1 opened at log sequence 1 Current log# 1 seq# 1 mem# 0: Y:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG Successful open of redo thread 1 MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set Fri Apr 24 19:52:59 2020 SMON: enabling cache recovery Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_3860.trc (incident=8561): ORA-00600: 内部错误代码, 参数: [2662], [3606], [3857372426], [3606], [3857377059], [12583040], [], [], [], [], [], [] Incident details in: d:\app\administrator\diag\rdbms\orcl\orcl\incident\incdir_8561\orcl_ora_3860_i8561.trc Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_3860.trc: ORA-00600: 内部错误代码, 参数: [2662], [3606], [3857372426], [3606], [3857377059], [12583040], [], [], [], [], [], [] Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_3860.trc: ORA-00600: 内部错误代码, 参数: [2662], [3606], [3857372426], [3606], [3857377059], [12583040], [], [], [], [], [], [] Error 600 happened during db open, shutting down database USER (ospid: 3860): terminating the instance due to error 600 Instance terminated by USER, pid = 3860 ORA-1092 signalled during: alter database open resetlogs...
这个错误比较常见,通过对数据库scn进行调整,顺利规避该错误,继续启动报如下错误
SQL> startup mount pfile='d:/pfile.txt'; ORACLE 例程已经启动。 Total System Global Area 1.3696E+10 bytes Fixed Size 2188768 bytes Variable Size 6878661152 bytes Database Buffers 6777995264 bytes Redo Buffers 37044224 bytes 数据库装载完毕。 SQL> alter database open; alter database open * 第 1 行出现错误: ORA-03113: 通信通道的文件结尾 进程 ID: 5884 会话 ID: 66 序列号: 3
Fri Apr 24 20:57:49 2020 SMON: enabling cache recovery Successfully onlined Undo Tablespace 2. Dictionary check beginning Dictionary check complete Verifying file header compatibility for 11g tablespace encryption.. Verifying 11g file header compatibility for tablespace encryption completed SMON: enabling tx recovery Database Characterset is ZHS16GBK No Resource Manager plan active Exception [type: ACCESS_VIOLATION, UNABLE_TO_READ] [ADDR:0x898ADE43] [PC:0x9287D88, kgegpa()+38] Dump file d:\app\administrator\diag\rdbms\orcl\orcl\trace\alert_orcl.log Fri Apr 24 20:57:49 2020 ORACLE V11.2.0.1.0 - 64bit Production vsnsta=0 vsnsql=16 vsnxtr=3 Windows NT Version V6.1 CPU : 16 - type 8664, 16 Physical Cores Process Affinity : 0x0x0000000000000000 Memory (Avail/Total): Ph:21429M/32767M, Ph+PgF:54255M/65533M Fri Apr 24 20:57:49 2020 Errors in file ORA-07445: caught exception [ACCESS_VIOLATION] at [kgegpa()+38] [0x0000000009287D88] Fri Apr 24 20:57:52 2020 PMON (ospid: 2496): terminating the instance due to error 397 Instance terminated by PMON, pid = 2496
这里的主要错误是由于ORA-07445 kgegpa,根据以前恢复经验,该问题很可能和undo有关,对undo进行处理之后启动库
SQL> startup mount pfile='d:/pfile.txt' ; ORACLE 例程已经启动。 Total System Global Area 1.3696E+10 bytes Fixed Size 2188768 bytes Variable Size 6878661152 bytes Database Buffers 6777995264 bytes Redo Buffers 37044224 bytes 数据库装载完毕。 SQL> recover database; 完成介质恢复。 SQL> alter database open; 数据库已更改。
SMON: enabling tx recovery Database Characterset is ZHS16GBK SMON: Restarting fast_start parallel rollback Fri Apr 24 21:01:28 2020 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_p000_4360.trc (incident=13377): ORA-00600: internal error code, arguments: [4198], [], [], [], [], [], [], [], [], [], [], [] Incident details in: d:\app\administrator\diag\rdbms\orcl\orcl\incident\incdir_13377\orcl_p000_4360_i13377.trc Stopping background process MMNL Doing block recovery for file 3 block 296 Resuming block recovery (PMON) for file 3 block 296 Block recovery from logseq 3, block 25 to scn 15491947056761 Recovery of Online Redo Log: Thread 1 Group 3 Seq 3 Reading mem 0 Mem# 0: Y:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG Block recovery completed at rba 3.25.16, scn 3607.20090 Doing block recovery for file 6 block 165592 Resuming block recovery (PMON) for file 6 block 165592 Block recovery from logseq 3, block 33 to scn 15491947056769 Recovery of Online Redo Log: Thread 1 Group 3 Seq 3 Reading mem 0 Mem# 0: Y:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG Block recovery completed at rba 3.58.16, scn 3607.20098 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_smon_4912.trc (incident=13321): ORA-00600: internal error code, arguments: [4198], [], [], [], [], [], [], [], [], [], [], [] Incident details in: d:\app\administrator\diag\rdbms\orcl\orcl\incident\incdir_13321\orcl_smon_4912_i13321.trc SMON: Parallel transaction recovery slave got internal error SMON: Downgrading transaction recovery to serial Stopping background process MMON Fri Apr 24 21:01:29 2020 Trace dumping is performing id=[cdmp_20200424210129] Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_smon_4912.trc (incident=13322): ORA-00600: internal error code, arguments: [4137], [12.30.1712324], [0], [0], [], [], [], [], [], [], [], [] Incident details in: d:\app\administrator\diag\rdbms\orcl\orcl\incident\incdir_13322\orcl_smon_4912_i13322.trc ORACLE Instance orcl (pid = 14) - Error 600 encountered while recovering transaction (12, 30). Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_smon_4912.trc: ORA-00600: internal error code, arguments: [4137], [12.30.1712324], [0], [0], [], [], [], [], [], [], [], [] Completed: alter database open upgrade Fri Apr 24 21:01:30 2020 MMON started with pid=16, OS id=4980 Fri Apr 24 21:01:31 2020 Sweep [inc][13322]: completed Corrupt block relative dba: 0x00c395ee (file 3, block 234990) Fractured block found during buffer read Data in bad block: type: 2 format: 2 rdba: 0x00c395ee last change scn: 0x0e16.e5ead38b seq: 0x2b flg: 0x04 spare1: 0x0 spare2: 0x0 spare3: 0x0 consistency value in tail: 0xdb720232 check value in block header: 0xebe2 computed block checksum: 0xb60b Reading datafile'Y:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF'for corruption at rdba: 0x00c395ee (file 3,block 234990) Reread (file 3, block 234990) found same corrupt data Corrupt Block Found TSN = 2, TSNAME = UNDOTBS1 RFN = 3, BLK = 234990, RDBA = 12817902 OBJN = 0, OBJD = -1, OBJECT = , SUBOBJECT = SEGMENT OWNER = , SEGMENT TYPE = Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_m001_4852.trc (incident=13641): ORA-01578: ORACLE data block corrupted (file # 3, block # 234990) ORA-01110: data file 3: 'Y:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF' Incident details in: d:\app\administrator\diag\rdbms\orcl\orcl\incident\incdir_13641\orcl_m001_4852_i13641.trc
SQL> create undo tablespace undotbs2 datafile 2 'Y:\APP\ADMINISTRATOR\ORADATA\ORCL\undo_xff02.dbf' size 128M autoextend on; 表空间已创建。 SQL> drop tablespace undotbs1 including contents and datafiles; 表空间已删除。 SQL> shutdown immediate; 数据库已经关闭。 已经卸载数据库。 ORACLE 例程已经关闭。 SQL> create spfile from pfile='d:/pfile.txt'; 文件已创建。 SQL> startup mount ORACLE 例程已经启动。 Total System Global Area 1.3696E+10 bytes Fixed Size 2188768 bytes Variable Size 6878661152 bytes Database Buffers 6777995264 bytes Redo Buffers 37044224 bytes 数据库装载完毕。 SQL> alter database open; 数据库已更改。
数据库启动之后继续报出来的ORA-600 4198和ORA-600 4137以及undo坏块均证明是由于undo异常引起的问题,通过重建新undo,数据库open正常,安排客户进行数据导出导入到新库