Oracle数据库备份和恢复基础10g第2版(10.2)说
归档的重做日志是成功恢复媒体的关键。定期支持他们。
但是,我想知道为什么归档日志的备份如此重要。是否可以只使用常规的RMAN完整和增量的数据文件备份来进行实时恢复?
发布于 2011-02-13 15:53:00
不,你仍然需要存档的重做日志。RMAN备份与冷备份不同;在还原它时,需要应用从启动备份到备份完成为止生成的所有重做,以便使SCN在所有数据文件和控制文件之间保持一致。
让我们考虑一下老式的热备份。在这种模式下,整个更改的数据库块被写入重做日志流,并在操作系统中复制文件。这会导致断块,即在备份读取期间,块发生了更改。因此,为了恢复数据库,我们还原DBFs,然后恢复过程将被归档的重做日志中的更改块覆盖到文件中的断裂块上,然后返回到一致的数据库。
在RMAN中,由于Oracle是通过SGA读取的,而不是像cp这样的Unix工具,所以可以消除块断裂的问题。但是,DBF在读取第一个块和最后一个块之间会发生变化,因此这是一个相同的问题,只是在更大的范围内。也就是说,SCN在备份的第一个块和最后一个块之间发生变化。归档的重做日志也涵盖了这一点。
RMAN为您提供了目录的可管理性,并提供了一种不需要以更高的速率生成重做(这会给磁盘、备份系统等带来压力)的方法。但是,BACKUP DATABASE本身不会为您提供一个一致的数据库;在Oracle中实现这一目的的唯一方法是冷备份。
发布于 2011-02-14 03:41:21
只有在Archive日志模式下运行时才需要备份Archive日志,所以问题是数据库是否应该这样做。您在标题确定ARCHIVELOG和NOARCHIVELOG模式下引用的同一文档中包含了这一内容。以下是一段节选:
在ARCHIVELOG和NOARCHIVELOG模式之间进行决定数据库的重做日志提供了数据库数据文件更改的完整记录(除了一些例外,例如直接路径加载)。您可以以两种模式之一运行数据库: ARCHIVELOG模式或NOARCHIVELOG模式。在ARCHIVELOG模式下,必须将已使用的联机重做日志组复制到一个或多个存档目的地,然后才能被重用。将重做日志归档将保留存储在该日志中的所有事务,以便在以后的恢复操作中使用。在NOARCHIVELOG模式中,在线重做日志组只是在重用日志时被覆盖。记录在重做日志组中的事务的所有信息都将丢失。2.3.3.1以NOARCHIVELOG模式运行数据库时,以NOARCHIVELOG模式运行会对备份和恢复策略造成严重限制。
如果您正在以NOARCHIVELOG模式运行,并且必须从磁盘故障对数据文件的损坏中恢复,则有两个主要的恢复选项:
..。
当性能要求极端或磁盘空间限制严重时,最好在NOARCHIVELOG模式下运行,尽管此选择会对您的恢复选项造成限制。
您几乎总是希望在ARCHIVELOG模式下运行,因此您几乎总是希望备份存档日志。
https://dba.stackexchange.com/questions/1201
复制相似问题