Когато използвате Microsoft SQL Server за свързване или достъп до повреден MDF файл на база данни, може да се сблъскате с разнообразие от съобщения за грешки, които могат да бъдат объркващи. По-долу ще изброим всички грешки, подредени по честота. За всяка грешка ще описваме симптомите й, ще обясним точната причина и ще предоставим примерни файлове заедно с файловете, поправени от DataNumen SQL Recovery. Това ще ви помогне да разберете по-добре тези грешки. Забележете, че ‘xxx.MDF’ ще представлява името на вашия повреден MDF файл на база данни на SQL Server.

Въз основа на грешките в SQL Server или CHECKDB, съществуват три вида грешки:

    1. Грешки при заделяне: Знаем, че данните в MDF & NDF файлове се заделят като страници. Съществуват и някои специални страници, използвани за управление на заделението, както следва:
Вид на страницата Описание
Страница на GAM Съхраняване на информацията за глобалната алокационна карта(GAM).
Страница на SGAM Съхраняване на информация за общата глобална алокационна карта (SGAM).
Страница на IAM Съхраняване на информацията за картата за разпределение на индекса (IAM).
Страница на PFS Съхраняване на информация за разпределение на PFS.

Ако някоя от гореспоменатите страници за разпределение имат грешки, или данните, управлявани от тези страници за разпределение, не съответстват на информацията за разпределение, тогава SQL Server или CHECKDB ще отчетат грешки при разпределението.

  • Грешки в последователността: За страници , които се използват за съхранение на данни, включително страници с данни и индексни страници, ако SQL Server или CHECKDB открият каквато и да е неконсистентност между съдържанието на страницата и контролната сума, те ще отчетат грешки в последователността.
  • Всички други грешки: Може да има други грешки, които не попадат в горните две категории.

 

SQL Server разполага с вграден инструмент наречен DBCC, който има опции CHECKDB и CHECKTABLE, които могат да помогнат за ремонт на повредената MDF база данни. Въпреки това, за сериозно повредени MDB файлове на база данни, DBCC CHECKDB и CHECKTABLE също ще се провалят.

Съобщения за грешки в последователността, докладвани от CHECKDB:

Грешки в разпределението, съобщени от CHECKDB:

Всички други грешки, докладвани от CHECKDB: