RESTORE在数据库< database>中的页面(0:0)上检测到错误.从备份集中读取 [英] RESTORE detected an error on page (0:0) in database <database> as read from the backup set
问题描述
我正在尝试将SQL Server 2012 .BAK文件还原到我的本地服务器.我已经成功还原了此.BAK文件.但是现在,当我尝试时,出现以下错误:
I'm attempting to restore a SQL Server 2012 .BAK file to my local server. I've successfully restored this .BAK file before. However now, when I try, I get the following error:
从备份集读取的数据,RESTORE在数据库'databasename'的页面(0:0)上检测到错误.
运行以下命令即可:
RESTORE HEADERONLY FROM DISK = 'D:\database.bak'
但是,运行以下命令:
RESTORE VERIFYONLY FROM DISK = 'D:\database.bak'
返回以下错误:
Msg 3203, Level 16, State 1, Line 1
Read on "D:\database.bak" failed: 13(The data is invalid.)
Msg 3013, Level 16, State 1, Line 1
VERIFY DATABASE is terminating abnormally.
今天早上,我再次从FTP服务器下载了.BAK文件,并得到了相同的错误.我问其他可以访问同一备份文件的人,他们可以毫无问题地还原它.有什么想法吗?
I downloaded the .BAK file from an FTP server again this morning and got the same error. I asked someone else with access to the same backup file and they can restore it with no issues at all. Any ideas?
推荐答案
可能是bak文件损坏或源数据库已损坏.
It is possible that you have a bad bak file or the source database is corrupted.
验证源数据库:
DBCC CHECKDB('DatabaseName') WITH NO_INFOMSGS, ALL_ERRORMSGS
在进行备份的服务器上.
DBCC CHECKDB('DatabaseName') WITH NO_INFOMSGS, ALL_ERRORMSGS
on the server the backup was taken on.
然后尝试再次备份它,并在复制生成的bak时,尝试使用其他替代方法(例如Robocopy,Copyfile等)二进制复制.
Then try to backup it again and when copying the resulting bak, try to binary copy your file with other alternatives such as Robocopy, Copyfile, etc.
这篇关于RESTORE在数据库< database>中的页面(0:0)上检测到错误.从备份集中读取的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!