симптом:
При прикреплении базы данных .MDF в SQL Server, вы увидите следующее сообщение об ошибке:
SQL Server обнаружена ошибка ввода-вывода на основе логической согласованности: неверная контрольная сумма (ожидаемая: 0x2abc3894; фактическая: 0x2ebe208e). Это произошло во время чтения страницы (1: 1) в базе данных с идентификатором 12 по смещению 0x00000000002000 в файле 'xxx.mdf'. Дополнительные сообщения в SQL Server журнал ошибок или журнал системных событий могут предоставить более подробную информацию. Это серьезная ошибка, которая угрожает целостности базы данных и должна быть немедленно исправлена. Выполните полную проверку целостности базы данных (DBCC CHECKDB). Эта ошибка может быть вызвана многими факторами; для получения дополнительной информации см. SQL Server Книги в Интернете. (Microsoft SQL Server, Ошибка: 824)
где «xxx.mdf» - это имя файла MDF, к которому осуществляется доступ.
Иногда вы можете успешно подключить базу данных .MDF. Однако, когда вы пытаетесь выполнить инструкцию SQL, например
ВЫБРАТЬ * ИЗ [TestDB]. [Dbo]. [Test_table_1]
вы также получите указанное выше сообщение об ошибке.
Скриншот сообщения об ошибке:
Точное объяснение:
Данные в файле MDF хранятся в виде страниц, каждая страница по 8 КБ. На каждой странице есть необязательное поле контрольной суммы.
If SQL Server обнаруживает, что значения контрольной суммы на некоторых страницах данных неверны, и сообщает об этой ошибке.
Вы можете использовать наш продукт DataNumen SQL Recovery для восстановления данных из поврежденного файла MDF и устранения этой ошибки.
Образцы файлов:
Примеры поврежденных файлов MDF, которые вызывают ошибку:
SQL Server версия | Поврежденный файл MDF | Файл MDF исправлен DataNumen SQL Recovery |
SQL Server 2005 | Error4_1.mdf | Error4_1_fixed.mdf |
SQL Server 2008 R2 | Error4_2.mdf | Error4_2_fixed.mdf |
SQL Server 2012 | Error4_3.mdf | Error4_3_fixed.mdf |
SQL Server 2014 | Error4_4.mdf | Error4_4_fixed.mdf |