早上在启动测试数据库时,发现如下问题:
数据库版本是11.2.0.3
SQL> startup
Oracle instance started.
Total System Global Area 1653518336 bytes
Fixed Size 2228904 bytes
Variable Size 1140854104 bytes
Database Buffers 503316480 bytes
Redo Buffers 7118848 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 8264
Session ID: 191 Serial number: 3
检查告警日志文件信息如下:
Fri Aug 24 09:52:27 2012
Completed: ALTER DATABASE MOUNT
Fri Aug 24 09:52:27 2012
ALTER DATABASE OPEN
Fri Aug 24 09:52:33 2012
Errors in file /u01/app/oracle/diag/rdbms/enmot2/enmot2/trace/enmot2_lgwr_8222.trc:
ORA-00322: log 2 of thread 1 is not current copy
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/enmot2/redo02b.log'
ORA-00322: log 2 of thread 1 is not current copy
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/enmot2/redo02a.log'
Errors in file /u01/app/oracle/diag/rdbms/enmot2/enmot2/trace/enmot2_lgwr_8222.trc:
ORA-00322: log 2 of thread 1 is not current copy
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/enmot2/redo02b.log'
ORA-00322: log 2 of thread 1 is not current copy
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/enmot2/redo02a.log'
Errors in file /u01/app/oracle/diag/rdbms/enmot2/enmot2/trace/enmot2_ora_8264.trc:
ORA-00322: log 1 of thread is not current copy
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/enmot2/redo02a.log'
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/enmot2/redo02b.log'
USER (ospid: 8264): terminating the instance due to error 322
Fri Aug 24 09:52:34 2012
System state dump requested by (instance=1, osid=8264), summary=[abnormal instance termination].
System State dumped to trace file /u01/app/oracle/diag/rdbms/enmot2/enmot2/trace/enmot2_diag_8212.trc
Dumping diagnostic data in directory=[cdmp_20120824095234], requested by (instance=1, osid=8264), summary=[abnormal instance termination].
Instance terminated by USER, pid = 8264
问题比较明显,日志镜像存在问题,由于测试库可以通过resetlog方式打开:
SQL> alter system set "_allow_resetlogs_corruption"=true scope=spfile;
System altered.
SQL> startup mount
ORACLE instance started.
Total System Global Area 1653518336 bytes
Fixed Size 2228904 bytes
Variable Size 1140854104 bytes
Database Buffers 503316480 bytes
Redo Buffers 7118848 bytes
Database mounted.
SQL> recover database until cancel;
Media recovery complete.
SQL> alter database open resetlogs;
Database altered.
此时告警日志信息如下:
Fri Aug 24 09:53:56 2012
alter database open resetlogs
ORA-1139 signalled during: alter database open resetlogs...
Fri Aug 24 09:54:27 2012
ALTER DATABASE RECOVER database until cancel
Media Recovery Start
started logmerger process
Parallel Media Recovery started with 4 slaves
Media Recovery Not Required
Completed: ALTER DATABASE RECOVER database until cancel
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 1427077
Resetting resetlogs activation ID 1296798128 (0x4d4b91b0)
Fri Aug 24 09:56:11 2012
Setting recovery target incarnation to 2
Fri Aug 24 09:56:12 2012
Assigning activation ID 1297978010 (0x4d5d929a)
Thread 1 opened at log sequence 1
Current log# 1 seq# 1 mem# 0: /u01/app/oracle/oradata/enmot2/redo01a.log
Current log# 1 seq# 1 mem# 1: /u01/app/oracle/oradata/enmot2/redo01b.log
Successful open of redo thread 1
Fri Aug 24 09:56:15 2012
MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set
Fri Aug 24 09:56:15 2012
SMON: enabling cache recovery
[8371] Successfully onlined Undo Tablespace 2.
Undo initialization finished serial:0 start:68627054 end:68628914 diff:1860 (18 seconds)
Dictionary check beginning
Fri Aug 24 09:56:26 2012
Dictionary check complete
Verifying file header compatibility for 11g tablespace encryption..
Verifying 11g file header compatibility for tablespace encryption completed
Fri Aug 24 09:56:26 2012
SMON: enabling tx recovery
Database Characterset is ZHS16GBK
No Resource Manager plan active
replication_dependency_tracking turned off (no async multimaster replication found)
Starting background process QMNC
Fri Aug 24 09:56:36 2012
QMNC started with pid=20, OS id=8383
LOGSTDBY: Validating controlfile with logical metadata
Fri Aug 24 09:56:37 2012
LOGSTDBY: Validation complete
Fri Aug 24 09:56:47 2012
Completed: alter database open resetlogs
以上就是整个处理过程。