DBMS - 数据备份


易失性存储损失

像 RAM 这样的易失性存储器存储所有活动日志、磁盘缓冲区和相关数据。 此外,它还存储当前正在执行的所有事务。 如果这种易失性存储突然崩溃会怎样? 它显然会带走数据库的所有日志和活动副本。 它使恢复几乎不可能,因为恢复数据所需的一切都丢失了。

在易失性存储丢失的情况下,可以采用以下技术 −

  • 我们可以在多个阶段设置检查点,以便定期保存数据库的内容。

  • 易失性内存中的活动数据库状态可以定期转储到稳定的存储中,其中还可能包含日志和活动事务以及缓冲区块。

  • <dump> 每当数据库内容从非易失性内存转储到稳定内存时,都可以在日志文件上进行标记。

恢复

  • 当系统从故障中恢复时,它可以恢复最新的转储。

  • 它可以维护一个redo-list和一个undo-list作为检查点。

  • 它可以通过查阅undo-redo列表来恢复系统,将所有事务的状态恢复到最后一个检查点。


数据库备份 & 从灾难性故障中恢复

灾难性故障是指稳定的辅助存储设备损坏。 使用存储设备,存储在其中的所有有价值的数据都会丢失。 我们有两种不同的策略来从这种灾难性故障中恢复数据 −

  • 远程备份 &minu; 在这里,数据库的备份副本存储在远程位置,在发生灾难时可以从中恢复。

  • 或者,数据库备份可以在磁带上进行并存储在更安全的地方。 稍后可以将此备份转移到新安装的数据库中,以将其带到备份点。

成熟的数据库太大而无法经常备份。 在这种情况下,我们有一些技术可以通过查看其日志来恢复数据库。 因此,我们在这里需要做的就是定期备份所有日志。 数据库可以每周备份一次,非常小的日志可以每天备份一次,也可以尽可能频繁地备份。


远程备份

远程备份提供了一种安全感,以防数据库所在的主要位置被破坏。 远程备份可以离线或实时或在线。 万一离线,手动维护。

远程数据备份

对于数据库管理员和投资者来说,在线备份系统更具有实时性和救命稻草。 在线备份系统是一种机制,其中实时数据的每一位都在两个遥远的地方同时备份。 其中一个直接连接到系统,另一个作为备份保存在远程位置。

一旦主数据库存储发生故障,备份系统就会感知到故障并将用户系统切换到远程存储。 有时这是如此的瞬间,以至于用户甚至无法意识到失败。