情况就是这样:
获得带有分区的SQL 2008数据库的完整备份(.bak文件)。 .bak文件是100gb。
我需要在不同的服务器上将此数据库还原到新数据库。 所以,命令是这样的:
Restore Database [newname] FROM DISK= N'D:\mydatabase.bak' WITH FILE = 1
MOVE 'mydatabasename' TO 'C:\mydatabase.mdf'
MOVE 'Partition1' TO 'C:\`mydatabase_1.ndf'
etc..
STATS = 1
处理完52%后,我收到此错误:
Msg 3183, Level 16, State 2, Line 1
RESTORE detected an error on page (8481:555819297) in database "dbname" as read from the backup set.
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.
在所有默认建议出现之前,这就是我已经做过的事情:
我该怎么做才能解决这个问题?我怎样才能解决实际问题?
感谢您的任何建议。
答案 0 :(得分:2)
我会检查服务器上创建的.bak的MD5校验和,并将其移动到新家。当你移动它时,我会打赌在你的副本中调整了一些小东西;在你的过程中的某些东西,可能只是一个网络打嗝,borked的东西或其他。
此处很少有MD5校验和实用程序:http://www.thefreecountry.com/utilities/free-md5-sum-tools.shtml
祝你好运。答案 1 :(得分:2)
我们能够在其他服务器上恢复备份。
过了一会儿,我们切换到新服务器。 带错误的旧版本现在在测试平台上。
结论是备份文件是正确的,问题在于服务器上的硬件问题。可能是磁盘问题,但是如果那清楚,我会在这里发布..
感谢您的建议。
答案 2 :(得分:2)
是的,对于这样的恢复错误,问题在于您尝试恢复备份的驱动器,尝试更改驱动器(例如d到e)..它对我有效。
还可以尝试直接附加mdf文件。