2013-09-23 28 views
1

中讀取我試圖將SQL Server 2012 .BAK文件還原到本地服務器。我以前已成功恢復此.BAK文件。但是現在,當我嘗試時,出現以下錯誤:RESTORE檢測到從數據庫<database>中的頁面(0:0)上的錯誤從備份集

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. 

我從下載了.bak文件一個FTP服務器今天早上又得到了同樣的錯誤。我讓其他人訪問相同的備份文件,他們可以在沒有任何問題的情況下恢復它。有任何想法嗎?

+0

他們可以恢復您下載的文件,或者他們可以從FTP下載並恢復?我的第一個猜測是文件被破壞(通過下載hickup),你應該嘗試重新下載和恢復。 (是的,如果需要,再次mayby再次) – Steve

+0

重新下載.bak作爲二進制固定它在我的情況。儘管Filezilla說它是「下載二進制模式」,但它可能不是。 還有一個類似的問題[這裏](http://serverfault.com/questions/541077/restore-detected-an-error-on-page-00-in-database-database-as-read-from-the)和[這裏](http://stackoverflow.com/questions/20544854/restore-detected-an-error-on-page-00)。 (http://serverfault.com/questions/541077/restore-detected-an-error-on-page-00-in-database-database-as-read-from-the) – RolfBly

回答

1

這可能是因爲你有一個壞的bak文件或源數據庫已損壞。

Verifiy源數據庫:

DBCC CHECKDB('DatabaseName') WITH NO_INFOMSGS, ALL_ERRORMSGS獲取備份的服務器上。

然後嘗試備份它再次複製導致李明博時,儘量二進制副本與其他替代品如的Robocopy,的CopyFile等

0

所有的解決方案指出一個損壞的備份文件的文件無法恢復。我那時做的是去源SQL數據庫並運行DBCC CHECKDB。在執行備份時檢查「驗證備份」也是很好的做法。

相關問題