симптом:

Когда используешь DBCC CHECKDB REPAIR_ALLOW_DATA_LOSS параметр для восстановления поврежденной базы данных .MDF, например:

DBCC CHECKDB(xxxx, 'REPAIR_ALLOW_DATA_LOSS')

вы видите следующее сообщение об ошибке:

Msg 5125, уровень 24, состояние 2, строка 2
Файл 'C:Program FilesMicrosoft SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf, по-видимому, был усечен операционной системой. Ожидаемый размер — 5120 КБ, но фактический размер — 5112 КБ.
Msg 3414, уровень 21, состояние 1, строка 2
Во время восстановления произошла ошибка, из-за которой база данных «Error1» (39:0) не могла быть восстановлена.tarтинг. Диагностируйте ошибки восстановления и исправьте их или выполните восстановление из заведомо исправной резервной копии. Если ошибки не исправляются или ожидаются, обратитесь в службу технической поддержки.

где «Error1» — имя восстанавливаемой поврежденной базы данных MDF.

Сообщение 5125 error не является ни ошибкой распределения, ни ошибкой непротиворечивости. Это происходит, когда часть хвоста файла MDB удаляется из-за повреждения данных.

Скриншот сообщения об ошибке:

Точное объяснение:

Когда часть хвоста файла MDB удалена, ПРОВЕРКА БДД сообщит Сообщение 5125 ошибка и попробуй исправить. Если базу данных нельзя исправить, она выдаст Сообщение 3414 ошибка.

Собственно базу тоже можно восстановить, если использовать наш продукт DataNumen SQL Recovery выполнить задание.

Примеры файлов:

SQL Server версия Поврежденный MDF-файл Файл MDF исправлен DataNumen SQL Recovery
SQL Server 2014 Error8.мдф Error8_fixed.mdf

Ссылки: