我正在使用第三方工具来进行计划数据库备份。我需要再做一次完全备份。它是否会受到预定备份的影响?如果有,有什么解决办法吗?
发布于 2016-01-13 14:48:26
简短的回答是肯定的。
通常,在完全备份之后执行差异备份,这完全取决于最后一次完全备份。这意味着,如果发生数据库故障,就没有机会应用计划好的差异备份,因为它们将与另一个LSN一起使用。
解决方案是使用COPY_ONLY选项。
发布于 2016-01-13 15:25:51
新的新的完全数据库备份将在预定备份中受到影响。
让我们考虑以下示例:假设整个数据库备份从每天12:00开始,差异备份每三小时启动一次,事务日志备份每小时进行一次。
然后,在12点进行计划的完全备份之后,您决定在14.00进行额外的备份,但是所有其他的差异和事务日志备份都是按照计划进行的。假设在22.20发生了一些故障,您正在尝试从12.00时完成的完全备份开始恢复数据库,在这种情况下,Server将向您发送错误消息。
原因是在15.00、18.00和21.00时完成的差异备份依赖于14.00时完成的完整备份。当然,如果您有所有事务日志备份,您可以在没有差异备份的情况下恢复数据库,但是这样的过程将花费更多的时间,否则您可以做的一切都是恢复上次计划的完全备份,从12.00开始的所有更改都将丢失。
因此,要使其他完全数据库备份使用COPY_ONLY选项:
BACKUP DATABASE your_database TO DISK = 'd:/full.bak' WITH COPY_ONLY发布于 2016-02-04 09:37:15
是的,它将影响预定备份(LSN链)。
如果你需要做一个额外的完全备份。您需要使用COPY_ONLY选项。此选项将使附加的完整备份不改变差异链。这样,您根本不影响LSN链。在新的临时备份之后采取的任何差异备份的LSN仍然指原始的完全备份,而不是冒充者。
因此,要使用COPY_ONLY选项进行完全备份,请执行以下T命令:
BACKUP DATABASE database_name TO DISK = 'y:/add_full.bak' WITH COPY_ONLY
https://dba.stackexchange.com/questions/126114
复制相似问题