症狀:
在附加.MDF數據庫時 SQL Server,您會看到以下錯誤消息:
SQL Server 檢測到基於邏輯一致性的I / O錯誤:頁面撕裂(預期簽名:0x ########;實際簽名:0x #######)。 它是在讀取文件'xxxx.mdf'中偏移量###的數據庫ID#中的頁面(#:#)期間發生的。 中的其他消息 SQL Server 錯誤日誌或系統事件日誌可能會提供更多詳細信息。 這是嚴重的錯誤情況,威脅數據庫的完整性,必須立即更正。 完成完整的數據庫一致性檢查(DBCC CHECKDB)。 此錯誤可能是由多種因素引起的; 有關更多信息,請參見 SQL Server 在線書籍。
其中“ xxx.mdf”是要訪問的MDF文件的名稱。
有時您可能會成功附加.MDF數據庫。 但是,當您嘗試執行SQL語句時,例如
SELECT * FROM [TestDB]。[dbo]。[test_table_1]
您還將收到上述錯誤消息。
錯誤消息的屏幕截圖:
精確說明:
MDF文件中的數據存儲為頁面,每頁8KB。 SQL Server 使用兩種機制來確保頁面(即校驗和或殘缺頁面)中數據的一致性和集成性。 兩者都是可選的。
If SQL Server 如果發現某些數據頁的殘缺頁無效,則將報告此錯誤。
您可以使用我們的產品 DataNumen SQL Recovery 從損壞的MDF文件中恢復數據並解決此錯誤。
樣本文件:
樣本損壞的MDF文件將導致錯誤:
SQL Server 版本 | MDF文件損壞 | MDF文件由固定 DataNumen SQL Recovery |
SQL Server 2005 | 錯誤5_1.mdf | 錯誤5_1_fixed.mdf |
SQL Server 2008 R2 | 錯誤5_2.mdf | 錯誤5_2_fixed.mdf |
SQL Server 2012 | 錯誤5_3.mdf | 錯誤5_3_fixed.mdf |
SQL Server 2014 | 錯誤5_4.mdf | 錯誤5_4_fixed.mdf |