请问各位朋友,今天做了个小测试,把所有的数据文件、归档文件和控制文件全部删除了,然后用原来全备份的数据进行恢复,recover database时我感觉他找不到我的归档文件备份,这是怎么回事呢?麻烦晓得原因的朋友回答下,十分感激

解决方案 »

  1.   

    报错很明显,recover 缺少必要的归档日志啊
      

  2.   

    是的,我把数据文件和归档文件都删除了。但在删除之前我用 backup archivelog all 将全部的备份文件都备份了一份啊,为什么它不会去寻找这个归档备份文件呢
      

  3.   

    备份时 和备份 完成时 都有日志 或者有归档,你就恢复到 你归档的日志最大的scn号试试,可以用 list backup acrhivelog看看,再看看数据文件的scn号 做不完全恢复试试
      

  4.   

    是的,我把数据文件和归档文件都删除了。但在删除之前我用 backup archivelog all 将全部的备份文件都备份了一份啊,为什么它不会去寻找这个归档备份文件呢你有没有备份数据库?你那语句只是备份归档日志的。
    你备份数据库之后的归档日志是否都在。看日志报错 日志号是1,看来是没有备份数据库的。
    正常的rman恢复 是先  restore  再 recover的。估计你连restore都没做吧
      

  5.   

    是的,我把数据文件和归档文件都删除了。但在删除之前我用 backup archivelog all 将全部的备份文件都备份了一份啊,为什么它不会去寻找这个归档备份文件呢你有没有备份数据库?你那语句只是备份归档日志的。
    你备份数据库之后的归档日志是否都在。看日志报错 日志号是1,看来是没有备份数据库的。
    正常的rman恢复 是先  restore  再 recover的。估计你连restore都没做吧
    我说下我的整体流程:
    我先backup database进行整备份 ,(控制文件也是同时自动备份的),
    然后我在新建了一个表test,提交完成之后我又backup archivelog all,将归档文件进行备份了。
    备份完成之后我把oradata\orcl\下的所有数据文件,控制文件和归档文件全删了。
    开始恢复:1、nomount状态下::restore conotrolfile from .........(这一步没问题)
    2:mount状态下:restore database ;
    3::mount状态下:recover database,之后就报上面这个错了,我觉着是因为我新建了那个test表又删除了归档日志文件,所以它恢复不了。但是我之前又备份了归档日志文件,我觉着它会从归档日志备份中进行恢复,可是它没有。结果就报上面这个错误了。
    我也尝试了使用restore archivelog all ,也还是报错
      

  6.   

    先restore archivelog 看看 提示什么
      

  7.   

    你打开归档模式后,先切几个日志再备份,再看看后续能不能recover