将存档日志和联机重做日志前滚到已还原的数据库

时间:2009-06-10 07:12:46

标签: oracle

我目前在Red Hat Enterprise Linux 5.0上使用Oracle db11g。 我每周一次增加0级,每天增加1级。 我可以在我的新Linux服务器上恢复此备份而不会出现任何问题,因为我在1级备份后生成了所有存档日志。

但是,如果尚未填写在线重做日志(我的意思是我在在线日志中有一些重做信息),我如何使用此在线日志前滚到新Linux服务器上的已恢复数据库? 我不想丢失尚未归档的有价值信息。

祝你好运, Sarith

3 个答案:

答案 0 :(得分:2)

  1. 恢复备份的文件。
  2. 将当前的在线重做日志文件(从“已损坏的”生产实例)复制到新服务器。
  3. RECOVER DATABASE;
  4. 此方案假定您与存档日志和在线日志完全连续。在进行恢复时,Oracle将应用必要的归档重做,然后转到联机重做日志以恢复到故障点。重要!不要从您拥有的备份中恢复联机重做日志!使用崩溃实例中的当前在线日志。

    最后,如果不为自己练习,不要相信你读过的任何内容!

答案 1 :(得分:1)

是的,您可以使用未归档的日志 - 如果您通过“使用备份控制文件恢复数据库”应用归档日志,只需提供重做日志名称,而不是恢复过程提供的建议归档日志名称。 (即存档日志的“耗尽”)。

答案 2 :(得分:0)

您是说您是使用RMAN将数据库复制到另一台服务器吗?

联机重做日志仅用于灾难恢复。例如:丢失数据文件,从最新备份恢复数据文件,并应用归档日志和最终在线重做日志。这使得恢复的数据文件具有与控制文件(和其他数据文件)相同的SCN(系统更改编号)。完成灾难恢复。

使用备份在另一台服务器上复制数据库时,只能使用存档日志前滚。它通过defenition进行不完全恢复(创建一个新的控制文件和重做日志)。

做一个 SQL>更改系统切换日志文件 在备份之前?

但无论源数据库保持打开状态,无论恢复是什么。我现在不完全是您的商业案例,但DataGuard可能是您的选择。

罗布