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$',这里的回滚段根据你的情况而定,如果有多个以逗号隔开。
ora-1548
._offline_rollback_segments=
或 undo_management=manual
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;
我工作中基本遇到的就是上面三种情况了,基本都能把数据打开。然后导出,重建。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21799400/viewspace-2112643/
,如需转载,请注明出处,否则将追究法律责任。