2

任何人都可以给我一个关于重做日志的想法吗?一个例子将不胜感激。

4

3 回答 3

3

当 Oracle 更改数据文件中的数据时,它会将信息写入重做日志。如果发生数据库故障,您可以使用此信息将数据库恢复到数据库故障之前的状态。

在灾难恢复方案中,您可以还原上次完整的数据库备份,然后应用自上次备份以来获取的重做日志以恢复数据库。如果没有这些重做日志,您只能恢复到最后一次完整备份,此后所做的更改将会丢失。

在Oracle中,你也可以在“无归档日志模式”下运行,这基本上意味着“重做日志可以被覆盖而不被保存”。这通常只适用于您不关心自上次备份以来丢失数据的开发数据库。您通常不会在生产环境中以这种模式运行,因为这可能是灾难性的。

这是一个包含更多信息的参考链接,以及如何找出生成的重做量的示例。

http://www.adp-gmbh.ch/ora/concepts/redo_log.html

于 2009-11-30T16:13:28.987 回答
3

文档中的明确答案:http: //download.oracle.com/docs/cd/B19306_01/server.102/b14231/onlineredo.htm#sthref850

于 2009-11-30T17:27:47.620 回答
0

扩展@dcp 的答案:从技术上讲,@dcp 指的是归档重做日志。这些是可选的,并且如上所述仅在以归档日志模式运行数据库时生成。每个 Oracle 数据库至少有两个强制性的联机重做日志文件。这些跟踪对数据库的所有更改。如果数据库意外崩溃,它们对于恢复至关重要,而归档日志则不然。在系统崩溃的情况下,Oracle 使用在线重做日志文件透明地使数据库恢复到最近提交的状态。在从备份恢复期间使用存档日志 - 恢复备份,然后将存档日志应用于备份,以使数据库恢复到当前状态或某个先前的时间点。

在线日志以循环方式写入 - 当一个填充时,下一个被“切换”到。如果设置了归档日志模式,则这些较旧的日志将写入归档日志目标。如果没有,一旦它们跟踪的更改被写入数据文件,它们就会根据需要被覆盖。

Oracle 站点上的备份和恢复概述非常好,可以让人们了解整个事情是如何组合在一起的。

于 2009-11-30T16:40:22.487 回答