Pri používaní Microsoft SQL Server na pripojenie alebo prístup k poškodenému databázovému súboru MDF sa môžete stretnúť s rôznymi chybovými hláseniami, ktoré môžu byť mätúce. Nižšie uvádzame zoznam všetkých chýb zoradených podľa frekvencie. Pre každú chybu načrtneme jej príznaky, vysvetlíme presnú príčinu a poskytneme vzorové súbory spolu so súbormi, ktoré opravili DataNumen SQL Recovery. To vám pomôže lepšie pochopiť tieto chyby. Poznámka 'xxx.MDF' bude predstavovať názov vášho skorumpovaného SQL Server databázový súbor MDF.
Na základe SQL Server alebo CHECKDB chybové správy, existujú tri druhy chýb:
-
- Chyby pri prideľovaní: Vieme, že údaje v súboroch MDF a NDF sú alokované ako stránky. Existuje niekoľko špeciálnych stránok, ktoré sa používajú na správu prideľovania:
Typ stránky | Popis |
Stránka GAM | Ukladajte informácie o mape globálneho pridelenia (GAM). |
Stránka SGAM | Ukladajte informácie o zdieľanej mape globálneho pridelenia (SGAM). |
Stránka IAM | Uložiť informácie o mape priradenia indexu (IAM). |
Stránka PFS | Uložiť informácie o pridelení PFS. |
Ak ktorákoľvek z vyššie uvedených stránok priradenia obsahuje chyby alebo údaje spravované týmito stránkami priradenia nie sú v súlade s informáciami o pridelení, potom SQL Server alebo CHECKDB bude hlásiť alokačné chyby.
- Chyby konzistencie: pre stránky ktoré sa používajú na ukladanie údajov vrátane údajových stránok a indexových stránok, ak SQL Server alebo CHECKDB vyhľadajte akýkoľvek nesúlad medzi obsahom stránky a kontrolným súčtom, potom sa ohlásia chyby konzistencie.
- Všetky ďalšie chyby: Môžu existovať ďalšie chyby, ktoré nespadajú do dvoch vyššie uvedených kategórií.
- xxxx.mdf nie je primárny databázový súbor. (Microsoft SQL Server, Chyba: 5171)
- Hlavička súboru „xxxx.mdf“ nie je platná hlavička súboru databázy. Vlastnosť VEĽKOSŤ SÚBORU je nesprávna. (Microsoft SQL Server, Chyba: 5172)
- SQL Server zistil logickú chybu I / O založenú na konzistencii: nesprávny kontrolný súčet
- SQL Server zistil logickú chybu I / O založenú na konzistencii: roztrhnutá stránka
- Omylom odstránite niektoré záznamy alebo tabuľky v databáze.
SQL Server má zabudovaný nástroj s názvom DBCC, ktorý má CHECKDB a KONTROLOVATEĽNÉ možnosti, ktoré môžu pomôcť opraviť poškodenú databázu MDF. Pre vážne poškodené súbory databázy MDB však DBCC CHECKDB a KONTROLOVATEĽNÉ tiež zlyhá.
Chyby konzistencie hlásené CHECKDB:
- SQL Server zistil logickú chybu I / O založenú na konzistencii: nesprávny kontrolný súčet
- Riadok v sys.xxx nemá zodpovedajúci riadok v sys.xxx.
- Chyba tabuľky: ID objektu ##, ID indexu ## sa znova zostaví.
- Tento index systémovej tabuľky nie je možné znova vytvoriť.
- ID objektu ##, ID indexu ##, ID oddielu ##, ID alokačnej jednotky ## (typ Neznámy), ID stránky (##: 560) obsahuje v záhlaví stránky nesprávne ID stránky.
Chyby alokácie hlásené CHECKDB:
- Stránka Index Allocation Map (IAM) je nasmerovaná na ďalší ukazovateľ stránky IAM
- Rozsah (##: ##) v ID databázy ## je označený ako pridelený v GAM, ale žiadny SGAM ani IAM ho nepridelil.
Všetky ďalšie chyby hlásené CHECKDB:
- Zlyhanie: (- ########) Vykonanie dotazu „DBCC CHECKDB (xxxx) S NO_INFOMSGS“ zlyhalo s nasledujúcou chybou: „xxxx“.
- Počas čítania na offsetu 0x ###### v súbore 'xxxx.mdf' bola zistená chyba I / O (chybné ID stránky).
- Systém nemohol dostatočne aktivovať databázu na opätovné vytvorenie protokolu
- Strata dát pri oprave s CHECKDB
- Zdá sa, že operačný systém súbor skrátil.
- Počas opakovania prihlásenej operácie v databáze „xxxx“ sa vyskytla chyba v ID záznamu protokolu.