我正在处理许多严重缺乏备份的不同服务器。
我想实现一个备份计划,使用简单的模式,每周备份一次,然后在一周内进行一系列不同的备份。
通过覆盖同一个文件来执行完整备份和差异备份是可行的计划吗?同样,我试图限制使用的存储量,据我理解,如果在某个时间间隔进行差异备份,则数据是累积的,因此只有最新的.dif文件与完整的.bak文件一起使用才是必要的。因此,每次执行差异备份时,它都会覆盖前面的内容。这是安全的还是我误解了什么重要的东西?
发布于 2020-01-07 18:26:28
每个差异备份都由上次完全备份后更改的页面组成。因此,如果您在周日进行了完全备份,然后在星期一、星期二等进行了不同的备份,那么恢复数据库只需要周日的完全备份,然后是最近一天的差异。
然而,通过每天覆盖您的差异,您正在失去恢复到以前的时间点的能力。示例:让我们假设您每天凌晨1点进行备份。在周四下午,你会发现数据在周三被破坏了,你需要回到最后一个已知的良好状态。您不能这样做,因为周三凌晨1点的差异备份(将是干净的)已被损坏的周四1 AM备份覆盖。
因此,要回答你的问题,只有当你认为除了最近的备份之外,你再也不需要恢复任何东西,而且备份总是正确的,并且没有损坏,这是安全的。我不会把我的工作押在那个假设上。
我不会赞同你提议的计划。存储相对便宜--这些数据对公司来说值多少钱?如果空间占优,则定期将备份移至另一个更大、更便宜的数据存储,以便您能够在需要时遵守任何数据保留策略、法规或法律。
发布于 2020-01-07 18:24:20
如果每次都覆盖diff备份,而最近的diff备份出现问题,则唯一剩下的选项是恢复完整备份(可能会有+6天的数据丢失)。
这些数据库的RPO是什么(允许丢失多少数据)?如果数据不重要,并且允许丢失其中的某些部分,则该选项可能有效,但我希望保留至少2个完整备份(例如,在上次完全备份已损坏的情况下)和最后2个diff备份(原因相同)。
同样,知道你的计划是否好的唯一方法就是知道你的需求是什么(RPO/RTO)
谢谢
发布于 2020-01-07 18:27:21
这是正确的,每一个差异,采取了你的恢复点到时间戳的差异。如果每次运行差异备份,您将无法恢复数据库--从完整备份到覆盖的差异之间的时间,只能从完整备份或可用的差异恢复。如果对于您的RPO来说,这个场景是可以接受的,那么您可以选择。如果不是,您可能需要重新考虑并可能将差异保留在指定的时间范围内。
https://dba.stackexchange.com/questions/256886
复制相似问题