♣
题目部分
在Oracle中,控制文件在缺失归档日志的情况下的恢复步骤有哪些?
♣
答案部分
在恢复控制文件时“recover database”命令可能需要使用归档日志。所谓缺失归档日志,是指控制文件从备份还原之后,在执行“recover database”命令恢复时报告找不到相应的日志导致恢复终止的情况。
这种情况下的恢复操作主要步骤如下:
① 首先还原控制文件,方式不限。
② 执行“recover database”命令将报RMAN-06054错误,即找不到某归档日志。
③ 查看相关的动态性能视图,对问题定位,确认问题与控制文件,而不是数据文件相关(与数据文件相关必须进行不完全恢复)。
④ 利用create controlfile 命令重建控制文件。
⑤ 再次执行“recover database”命令,还会报RMAN-06054错误,这次是找不到另一个归档日志,其序列号应该大于第二步中的。
⑥ 查看v$log视图确定第5步中所要的是哪个日志。
⑦ 执行SQLPLUS的”recover database using backup controlfile“命令,等”Specify log:“提示符出现后给出正确的在线日志路径,直到命令成功结束。
⑧ 以resetlogs方式打开数据库。
⑨ 由于创建的控制文件内不会有临时数据文件的信息,需要重新将其添加回临时表空间。
⑩ 将控制文件内其他丢失的信息用catalog和configure等命令再添加回去。
& 说明:
有关控制文件在缺失归档日志的情况下的恢复可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2152115/
本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗