Oracle controlfile recovery

来源:互联网 发布:hp网络打印机怎么设置 编辑:程序博客网 时间:2024/06/03 01:31

控制文件恢复:使用备份直接恢复, 重建控制文件.

使用备份直接恢复
恢复后需要resetlogs打开数据库,下面解释一下resetlogs的使用.
1, 什么是resetlogs?
   resetlogs参数的使用使数据库重置redo logfile,使得redo从头开始记录.

2, 什么情况下resetlogs?
   a, 不完全恢复数据库;
   b, 使用备份的控制文件进行了恢复;
   c, 创建控制文件时,带有了resetlogs参数.

3, 为什么使用了备份控制文件,需要进行resetlogs?
   因为当前的控制文件丢失之后,Oracle再也无法判断哪一个日志文件就是最后的那个current状态的日志文件;另外,即使完成的是完全恢复,
   那么这个完全恢复  也有可能只是一个阶段,及这个日志文件仅仅只是redo stream里的一个中间阶段而已.

4, 完全恢复与resetlogs如何区分?
   完全恢复与resetlogs没有必然联系.
   完全恢复取决于是否恢复到了最后一次成功commit的事务.

重建控制文件恢复
重建控制文件后,使用了NORSETLOGS,数据恢复后不需要resetlogs.
重建控制文件后的数据库,无法识别之前的RMAN备份集信息,以前的归档日志信息.
步骤:
a, 从备份集恢复一个控制文件;
b, alter database mount;
c, restore database;
d, alter database backup controlfile to trace;
e, @gettrcname并获取创建脚本;
f, shutown immediate;
g, startup nomount;
h, 使用trace文件使用NORESETLOGS创建控制文件;
i, recover database;
j, alter database open;


原创粉丝点击