问题现象:
我在执行开启归档命令后报错误ORA-00265
SQL> alter database archivelog; alter database archivelog * ERROR at line 1: ORA-00265: instance recovery required, cannot set ARCHIVELOG mode
问题分析:
从如上错误我们可以看到是因为datafile,controlfile,redolog中的SCN号不一致导致无法开启归档,那么导致该问题的原因是因为我重启数据库到mount的时候采用的是startup force mount;因为这个命令实际上是做了两步操作,分别如下:
1、shutdown abort —强制关闭数据库
2、startup mount
既然我们隐含的做了shutdown abort操作之后,也就意味着datafile,controlfile,redolog这里面的SCN号肯定不一致,需要在open数据库的过程中做recover,由于他们的SCN号不一致,所以会导致无法在mount状态下开启archivelog,如下:
SQL> startup mount force; ORACLE instance started. Total System Global Area 2505338880 bytes Fixed Size 2255832 bytes Variable Size 620758056 bytes Database Buffers 1862270976 bytes Redo Buffers 20054016 bytes Database mounted. SQL> alter database archivelog; alter database archivelog * ERROR at line 1: ORA-00265: instance recovery required, cannot set ARCHIVELOG mode
问题解决办法:
针对该问题,最简单的解决办法是,将数据库open,这个时候会进行recover操作,完成之后再进行shutdown immediate后启动到statup mount就可以开启归档了,详细见如下:
SQL> alter database open; Database altered. ####recover日志信息如下 alter database open Beginning crash recovery of 1 threads parallel recovery started with 3 processes Started redo scan Completed redo scan read 1522 KB redo, 175 data blocks need recovery Started redo application at Thread 1: logseq 7, block 10941 Recovery of Online Redo Log: Thread 1 Group 1 Seq 7 Reading mem 0 Mem# 0: /DBData/woo2/redo01.log Completed redo application of 0.44MB Completed crash recovery at Thread 1: logseq 7, block 13985, scn 991198 175 data blocks read, 175 data blocks written, 1522 redo k-bytes read Wed Sep 03 22:39:35 2014 Thread 1 advanced to log sequence 8 (thread open) Thread 1 opened at log sequence 8 Current log# 2 seq# 8 mem# 0: /DBData/woo2/redo02.log Successful open of redo thread 1 MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set Wed Sep 03 22:39:35 2014 SMON: enabling cache recovery [13499] Successfully onlined Undo Tablespace 2. Undo initialization finished serial:0 start:3565124 end:3565194 diff:70 (0 seconds) Verifying file header compatibility for 11g tablespace encryption.. Verifying 11g file header compatibility for tablespace encryption completed SMON: enabling tx recovery Database Characterset is AL32UTF8 No Resource Manager plan active replication_dependency_tracking turned off (no async multimaster replication found) Starting background process QMNC Wed Sep 03 22:39:36 2014 QMNC started with pid=23, OS id=16119 Completed: alter database open Wed Sep 03 22:39:37 2014 db_recovery_file_dest_size of 4182 MB is 0.00% used. This is a user-specified limit on the amount of space that will be used by this database for recovery-related files, and does not reflect the amount of space available in the underlying filesystem or ASM diskgroup. Wed Sep 03 22:39:37 2014 Starting background process CJQ0 Wed Sep 03 22:39:37 2014 CJQ0 started with pid=24, OS id=16134 Starting background process SMCO Wed Sep 03 22:39:43 2014 SMCO started with pid=30, OS id=16149
#####immediate关闭数据库,重新开启归档,即可。
SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL> startup mount; ORACLE instance started. Total System Global Area 2505338880 bytes Fixed Size 2255832 bytes Variable Size 620758056 bytes Database Buffers 1862270976 bytes Redo Buffers 20054016 bytes Database mounted. SQL> alter database archivelog; Database altered. SQL> alter database open; Database altered. SQL> ###打开归档alert日志信息如下 ALTER DATABASE MOUNT Successful mount of redo thread 1, with mount id 3606990310 Database mounted in Exclusive Mode Lost write protection disabled Completed: ALTER DATABASE MOUNT Wed Sep 03 22:45:06 2014 alter database archivelog Completed: alter database archivelog alter database open Wed Sep 03 22:45:12 2014 LGWR: STARTING ARCH PROCESSES Wed Sep 03 22:45:12 2014 ARC0 started with pid=20, OS id=16867 ARC0: Archival started LGWR: STARTING ARCH PROCESSES COMPLETE ARC0: STARTING ARCH PROCESSES Wed Sep 03 22:45:13 2014 ARC1 started with pid=21, OS id=16871 Wed Sep 03 22:45:13 2014 ARC2 started with pid=22, OS id=16873 Wed Sep 03 22:45:13 2014 ARC3 started with pid=23, OS id=16875 ARC1: Archival started ARC2: Archival started ARC1: Becoming the \