Oracle联机重做日志文件恢复(redo log)(三)

2014-11-24 09:39:19 · 作者: · 浏览: 1
e 1:
ORA-01624: log 1 needed for crash recovery of instance s1 (thread 1)
ORA-00312: online log 1 thread 1: '/home/oracle/oradata/s1/redo01.log'
SQL> alter database clear unarchived logfile group 1;
alter database clear unarchived logfile group 1
*
ERROR at line 1:
ORA-01624: log 1 needed for crash recovery of instance s1 (thread 1)
ORA-00312: online log 1 thread 1: '/home/oracle/oradata/s1/redo01.log'
3.如果没有pfile文件创建pfile文件,把原来的spfile重命名掉(保证用户pfile启动)
SQL> create pfile from spfile;
File created.
4.关闭数据库
SQL> shutdown immediate;
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
5.修改pfile文件加上:
_allow_resetlogs_corruption=TRUE
6.启动数据库,并执行recover database until cancel;填入cancel
SQL> startup
ORACLE instance started.
Total System Global Area 167772160 bytes
Fixed Size 1218316 bytes
Variable Size 67111156 bytes
Database Buffers 96468992 bytes
Redo Buffers 2973696 bytes
Database mounted.
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/home/oracle/oradata/s1/redo01.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
SQL> recover database until cancel;
ORA-00279: change 521368 generated at 11/11/2012 23:13:13 needed for thread 1
ORA-00289: suggestion : /archive1/1_3_799109734.dbf
ORA-00280: change 521368 for thread 1 is in sequence #3
Specify log: {=suggested | filename | AUTO | CANCEL}
cancel
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/home/oracle/oradata/s1/system01.dbf'
ORA-01112: media recovery not started
8.用户resetlogs打开数据库
SQL> alter database open resetlogs;
Database altered.
9.数据库打开后马上full export
10.关闭数据库去掉_allow_resetlogs_corruption=TRUE;
11.重建库
12.full import并完成恢复
13.建议执行下 analyze table ..validate structure cascade;
14.做数据库全备