欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

新手问个until cancel恢复出错有关问题

更新时间: 2014-01-05 02:15:30 责任编辑: Author_N1

 

新手问个until cancel恢复出错问题
为了测试恢复数据库(归档模式)

SQL> shutdown abort
SQL> startup                --可以起来
SQL> shutdown abort
SQL> startup mount 

SQL> recover database using backup controlfile until cancel;ORA-00279: change 503362 generated at 02/07/2012 17:54:35 needed for thread 1
ORA-00289: suggestion :
/home/oracle/oracle/product/10.2.0/flash_recovery_area/ORCL/archivelog/2012_02_0
7/o1_mf_1_6_%u_.arc
ORA-00280: change 503362 for thread 1 is in sequence #6


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
cancelORA-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/oracle/product/10.2.0/oradata/orcl/system01.dbf'


ORA-01112: media recovery not started


SQL> alter database open resetlogs;alter database open resetlogs
*
ERROR at line 1:
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1:
'/home/oracle/oracle/product/10.2.0/oradata/orcl/system01.dbf'




试过数据库直接startup可以起来,或者用recover database也可以完全恢复
为什么用cancel不完全恢复就不行呢,选auto还是cancel都起不来。
之后启动就提示要resetlog开启,resetlog开启又提示要恢复system01.dbf,一直循环。

最后设置"_allow_resetlogs_corruption"=true 可以起来
只有10分才在这里问,大家多多包涵。
--参考方法--
你直接abort,数据库可能需要实例恢复,也可能需要介质恢复(概率不大)
然后你直接输入了cancel,数据库就没有进行实例恢复了,当然不能启动了


startup自动做实例恢复
recover database 做介质恢复,然后你在open的时候做实例恢复
_allow_resetlogs_corruption 屏蔽掉了应用redo,所以相当实例恢复被屏蔽(不太准确,但是确实有这个效果)
--参考方法--
你abort之后,启动的时候看看alert日志里是否有实例恢复或者介质恢复的信息,如果有实例或者介质恢复,必须等恢复之后进行recover

顺便说下你要进行Until cancel移除部分归档,recover database的时候就会报错的,然后再进行recover cancel
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:15:30
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/7621/
本文WWW.DOC100.NET DOC100.NET版权所有。