SQL2005 数据库差异备份
此问题比较特殊,已经困扰本人3天了,望大神给个能给个解决方案。
为何会产生这样的问题就不要深究了,综合原因是经手人过多。
涉及:SQL2005数据库TEST、电脑A、电脑B
问题:
1.数据库TEST首先创建于电脑A中,设置了一个计划任务是差量备份(有完整备份)。
2.备份了一段时间后,将电脑A中的SQL服务停止,且将数据库TEST的两个文件(mdf、ldf)拷贝到电脑B上。
3.在电脑B中将拷贝的数据库TEST附加到SQL中,然后清除了所有数据修改了表结构,并做了两次全部备份。
4.将此修改后的数据库拷贝回电脑A中(将之前的文件转移到别的目录备份),开启了SQL服务,未做任何全备份,但是计划任务自动进行了差异备份(TestCY.bak)。
问:4中的差异备份(TestCY.bak)对应的完整备份时机器A中的最后一次(TestAWZ.bak)还是机器B中的最后一次(TestBWZ.bak)?
实操:由于电脑A的特殊性没有做任何恢复操作。
1.在电脑B中使用TestBWZ.bak和TestCY.bak恢复提示如下:
System.Data.SqlClient.SqlError: 无法应用此备份集,因为它的恢复路径与数据库不一致。该恢复路径是将数据库还原到特定恢复点的数据和日志备份的序列。请找到要还原的兼容备份,或者还原数据库的其余部分以与此备份集内的恢复点匹配,这样可将数据库还原到其他时间点。有关恢复路径的详细信息,请参阅 SQL Server 联机丛书。 (Microsoft.SqlServer.Smo)
2.在电脑C中使用(TestAWZ.bak和TestBWZ.bak)、(TestBWZ.bak和TestCY.bak)恢复提示如下:
System.Data.SqlClient.SqlError: 无法还原此差异备份,因为该数据库尚未还原到正确的早期状态。 (Microsoft.SqlServer.Smo)