标题: ora-00354 ora-00353 的解决方法 [打印本页] 作者: 王亮 时间: 2020-11-21 13:13 标题: ora-00354 ora-00353 的解决方法 SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01172: recovery of thread 1 stuck at block 25 of file 2
ORA-01151: use media recovery to recover block, restore backup if needed
SQL> recover database;
ORA-00283: recovery session canceled due to errors
ORA-00354: corrupt redo log block header
ORA-00353: log corruption near block 560 change 13526620 time 07/14/2010
15:12:53
ORA-00312: online log 2 thread 1: 'C:\ORACLE\CEQ\MIRRLOGB\LOG_G12M2.DBF'
ORA-00312: online log 2 thread 1: 'D:\ORACLE\CEQ\ORIGLOGB\LOG_G12M1.DBF'
网上关于在线日志损坏的恢复方法已经很多了。
先试着recover database until cancel;
alter database open resetlogs;
如果打不开。
pfile增加_allow_resetlogs_corruption=true条目。
recover database until cancel;
alter database open resetlogs;
如果还报错,特别的是Ora-00600 4194经常遇到。
那么pfile再增加隐含参数。
._corrupted_rollback_segments='_SYSSMU1$',这里的回滚段根据你的情况而定,如果
有多个以逗号隔开。
recover database until cancel;
alter database open resetlogs;
还可能会报错,特别是ORA-600 2662。
alter session set events '10015 trace name adjust_scn level x';
recover database until cancel;
alter database open resetlogs;
,基本都能把数据打开。然后导出数据库,进行重建。