来源:赛迪网 作者:小乔
在很多情况下,在运用隐含参数_ALLOW_RESETLOGS_CORRUPTION后,用resetlogs翻开数据库将会因为SCN不差别泛起ORA-00600 2662错误,下文中将针对这一题目的处理惩罚进程进行过细的引见。
首先,在正常启动数据库后,巨匠可以从alert文件中发明ora-00600 2662号错误。
Sun Dec 11 18:02:25 2005Errors in file /opt/oracle/admin/conner/udump/conner_ora_13349.trc:ORA-00600: internal error code, arguments: [2662], [0], [547743994], [0], [898092653], [8388617], [], []Sun Dec 11 18:02:27 2005Errors in file /opt/oracle/admin/conner/udump/conner_ora_13349.trc:ORA-00600: internal error code, arguments: [2662], [0], [547743994], [0], [898092653], [8388617], [], []Sun Dec 11 18:02:27 2005Error 600 happened during db open, shutting down databaseUSER: terminating instance due to error 600
(可以经由Oracle的内部事项来调解SCN)
增加SCN的常用体式格式:
1.经由immediate trace name体式格式(在数据库Open形状下)
alter session set events 'IMMEDIATE trace name ADJUST_SCN level x';
2.经由10015事项(在数据库无法翻开,mount形状下)
alter session set events '10015 trace name adjust_scn level x';
正文:level 1为增加SCN 10亿 (1 billion) (1024*1024*1024),一样平凡情况下Level 1曾经够用。巨匠也可以按照理论情况恰当调解。
在此示例中因为数据库无法翻开,只能运用两种体式格式。
[oracle@jumper dbs]$ sqlplus "/ as sysdba"SQL*Plus: Release 9.2.0.4.0 - Production on Sun Dec 11 18:26:18 2005Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.Connected to an idle instance.SQL> startup mount pfile=initconner.oraORACLE instance started.Total System Global Area 97588504 bytesFixed Size 451864 bytesVariable Size 33554432 bytesDatabase Buffers 62914560 bytesRedo Buffers 667648 bytesDatabase mounted.SQL> alter session set events '10015 trace name adjust_scn level 10';Session altered.SQL> alter database open;Database altered.
巨匠需求属意,因为示例中运用了10015事项,使得SCN增加了10 billion,稍后可以陆续来验证。
[oracle@jumper dbs]$ sqlplus "/ as sysdba"SQL*Plus: Release 9.2.0.4.0 - Production on Sun Dec 11 18:26:18 2005Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.Connected to an idle instance.SQL> startup mount pfile=initconner.oraORACLE instance started.Total System Global Area 97588504 bytesFixed Size 451864 bytesVariable Size 33554432 bytesDatabase Buffers 62914560 bytesRedo Buffers 667648 bytesDatabase mounted.SQL> alter session set events '10015 trace name adjust_scn level 10';Session altered.SQL> alter database open;Database altered.
此时,数据库可以翻开,从alert文件中巨匠可以发明下面的提示:
Sun Dec 11 18:27:04 2005SMON: enabling cache recoverySun Dec 11 18:27:05 2005Debugging event used to advance scn to 10737418240
SCN被增加了10 billion,即 10 * (1024*1024*1024) = 10737418240,正好这天记里记载的数量。
巨匠可以从数据库内部看一下反省点的增加情况:
SQL> select open_mode from v$database;OPEN_MODE----------READ WRITESQL> select file#,CHECKPOINT_CHANGE# from v$datafile; FILE# CHECKPOINT_CHANGE#---------- ------------------ 1 547783998 2 547783998 3 547783998SQL> shutdown immediate;Database closed.Database dismounted.ORACLE instance shut down.SQL> startupORACLE instance started.Total System Global Area 97588504 bytesFixed Size 451864 bytesVariable Size 33554432 bytesDatabase Buffers 62914560 bytesRedo Buffers 667648 bytesDatabase mounted.Database opened.SQL> select file#,CHECKPOINT_CHANGE# from v$datafile; FILE# CHECKPOINT_CHANGE#---------- ------------------ 1 1.0737E 10 2 1.0737E 10 3 1.0737E 10SQL> col CHECKPOINT_CHANGE# for 99999999999999999SQL> select file#,CHECKPOINT_CHANGE# from v$datafile; FILE# CHECKPOINT_CHANGE#---------- ------------------ 1 10737418447 2 10737418447 3 10737418447
至此,巨匠可以发明CHECKPOINT_CHANGE#最后被增加了10 Billion。
版权声明:
原创作品,容许转载,转载时请务必以超链接体式格式标明文章 原始来由 、作者信息和本声明。不然将清查法律责任。