我正在做下面的练习。我认为答案是“恢复最新的完全备份,然后恢复最新的差异备份”。
但是,给出的答案是“还原最新的完全备份,并恢复最新的差异备份。然后,从最近的差异备份恢复每个日志备份在失败之前采取的备份”。
我不认为这是正确的,因为事务日志备份没有在简单模式下进行?
谢谢!
场景:数据库使用简单的恢复模型。全面数据库备份01:00每天。每天13:00差异备份。
问题:差异备份失败。然后数据库在14:00失效。如何恢复数据库并确保最小的数据丢失?
发布于 2013-10-23 14:56:22
这两个答案都是错误的:你的和他们的。
有一件事是正确的-- SQL Server甚至不允许在数据库上创建日志备份,将其设置为“简单”恢复模型。
所以他们的答案是不正确的,因为它说“还原每个日志备份”,当日志备份不存在时。但是,您的答案也是不正确的,因为自完整备份以来,只有一个差异备份,并且差异备份失败。
所以..。真正的答案是:
(1)尝试备份失败的数据库。
这不会使事情变得更糟,如果它成功了,以后可能会非常有用。(如果它有非常重要的信息,您可以尝试稍后将其还原到备用环境,并查看是否可以恢复其中的任何信息。)
(2)从最新的完全备份恢复。
有问题吗?
发布于 2015-11-30 09:51:54
场景:数据库使用简单的恢复模型。全面数据库备份01:00每天。每天13:00差异备份。
问题:差异备份失败。然后数据库在14:00失效。如何恢复数据库并确保最小的数据丢失?
在这种情况下,您可以做的最好的事情是:还原完整的数据库备份01:00。
RESTORE DATABASE
database
FROM DISK = 'D:/FULL' WITH NORECOVERY, REPLACE
因此,您的差异备份失败,并且没有机会还原它,否则完整备份之后的下一步将是:还原差异备份(13:00)。
RESTORE DATABASE
database
FROM DISK = 'D:/FULL' WITH RECOVERY
在您的情况下,自上次完全备份01:00以来的所有更改都将丢失。
https://stackoverflow.com/questions/19536840
复制相似问题