DBMS 数据备份怎么做?数据库如何实现备份和恢复?

文章导读
Previous Quiz Next 易失性存储丢失 像 RAM 这样的易失性存储保存所有活动日志、磁盘缓冲区和相关数据。此外,它还存储当前正在执行的所有事务。如果这种易失性存储突然崩溃,会发生什么?显然,它会带走所有日志和数据库的活动副本。这使得恢复几乎不可能,因为恢复数
📋 目录
  1. A 易失性存储丢失
  2. B 灾难性故障的数据库备份与恢复
  3. C 远程备份
A A

DBMS - 数据备份



Previous
Quiz
Next

易失性存储丢失

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

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

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

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

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

恢复

  • 系统从故障中恢复时,可以还原最新的 dump。

  • 它可以将 checkpoints 作为 redo-list 和 undo-list 来维护。

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

灾难性故障的数据库备份与恢复

灾难性故障是指稳定的二级存储设备损坏。随着存储设备的损坏,存储在其中的所有宝贵数据都会丢失。我们有两种不同的策略来从这种灾难性故障中恢复数据 —

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

  • 或者,可以将数据库备份存储在磁带上,并保存在更安全的地方。此备份随后可以传输到新安装的数据库上,将其恢复到备份点。

大型数据库过于庞大,无法频繁备份。在这种情况下,我们有技术可以通过查看其日志来恢复数据库。因此,这里需要做的就是定期备份所有日志。数据库可以每周备份一次,而日志体积很小,可以每天或尽可能频繁地备份。

远程备份

远程备份在数据库所在的主要位置被破坏时提供安全保障。远程备份可以是离线、实时或在线的。如果是离线,则手动维护。

Remote Data Backup

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

一旦主数据库存储失败,备份系统就会感知故障并将用户系统切换到远程存储。有时切换如此迅速,用户甚至意识不到故障。