Příznak:
Při použití DBCC CHECKDB s REPAIR_ALLOW_DATA_LOSS parametr pro opravu poškozené databáze .MDF, například:
DBCC CHECKDB (xxxx, 'REPAIR_ALLOW_DATA_LOSS')
zobrazí se následující chybová zpráva:
Výsledky DBCC pro „xxxx“.
CHECKDB našel v databázi 'xxxx' 0 alokačních chyb a 0 chyb konzistence.
Msg 824, úroveň 24, stav 2, řádek 8
SQL Server detekována logická chyba I / O založená na konzistenci: nesprávný kontrolní součet (očekáváno: 0xea8a9a2f; skutečné: 0x37adbff8). Došlo k němu během čtení stránky (1:28) v databázi ID 39 na offsetu 0x00000000038000 v souboru 'xxxx.mdf'. Další zprávy v SQL Server protokol chyb nebo protokol systémových událostí mohou poskytnout více podrobností. Toto je závažný chybový stav, který ohrožuje integritu databáze a musí být okamžitě opraven. Dokončete úplnou kontrolu konzistence databáze (DBCC CHECKDB). Tato chyba může být způsobena mnoha faktory; Další informace viz SQL Server Knihy online.
kde „xxxx.mdf“ je název poškozeného souboru MDF, který je opravován. Ačkoli říká CHECKDB
CHECKDB našel v databázi 'xxxx' 0 alokačních chyb a 0 chyb konzistence.
Stále se jedná o chybu konzistence (Zpráva 824) v databázi.
Screenshot chybové zprávy:
Pokud je poškození závažné, budou se neustále zobrazovat chybové zprávy (Zpráva 824), jak je uvedeno níže:
Msg 824, úroveň 24, stav 6, řádek 2 SQL Server zjistil logickou chybu I / O založenou na konzistenci: nesprávný kontrolní součet (očekávaný: 0x3d17dfef; skutečný: 0xd81748ef). Došlo k němu během čtení stránky (1: 0) v databázi ID 39 na offsetu 0000000000000000 v souboru 'xxxx.mdf'. Další zprávy v SQL Server protokol chyb nebo protokol systémových událostí mohou poskytnout více podrobností. Toto je závažný chybový stav, který ohrožuje integritu databáze a musí být okamžitě opraven. Dokončete úplnou kontrolu konzistence databáze (DBCC CHECKDB). Tato chyba může být způsobena mnoha faktory; Další informace viz SQL Server Knihy online.
Msg 824, úroveň 24, stav 6, řádek 4 SQL Server zjistil logickou chybu I / O založenou na konzistenci: nesprávný kontrolní součet (očekávaný: 0x3d17dfef; skutečný: 0xd81748ef). Došlo k němu během čtení stránky (1: 0) v databázi ID 39 na offsetu 0000000000000000 v souboru 'xxxx.mdf'. Další zprávy v SQL Server protokol chyb nebo protokol systémových událostí mohou poskytnout více podrobností. Toto je závažný chybový stav, který ohrožuje integritu databáze a musí být okamžitě opraven. Dokončete úplnou kontrolu konzistence databáze (DBCC CHECKDB). Tato chyba může být způsobena mnoha faktory; Další informace viz SQL Server Knihy online.
kde „xxxx.mdf“ je název poškozeného souboru MDF, který je opravován.
Screenshot chybové zprávy:
Pokud je korupce závažnější, můžete vidět Zpráva 7909 následovně Zpráva 824:
Výsledky DBCC pro „xxxx“.
CHECKDB našel v databázi 'xxxx' 0 alokačních chyb a 0 chyb konzistence.
Msg 824, úroveň 24, stav 2, řádek 8
SQL Server zjistil logickou chybu I / O založenou na konzistenci: nesprávný kontrolní součet (očekávaný: 0xcfcd2118; skutečný: 0x6fc599d6). Došlo k němu během čtení stránky (1: 1) v databázi ID 39 na offsetu 0x00000000002000 v souboru 'xxxx.mdf'. Další zprávy v SQL Server protokol chyb nebo protokol systémových událostí mohou poskytnout více podrobností. Toto je závažný chybový stav, který ohrožuje integritu databáze a musí být okamžitě opraven. Dokončete úplnou kontrolu konzistence databáze (DBCC CHECKDB). Tato chyba může být způsobena mnoha faktory; Další informace viz SQL Server Knihy online.
Msg 7909, úroveň 20, stav 1, řádek 8
Oprava v nouzovém režimu se nezdařila. Musíte obnovit ze zálohy.
kde „xxxx“ je název databáze a „xxxx.mdf“ je název fyzického souboru databáze.
Poznámka Zpráva 7909 je závažná chyba, která může nastat v mnoha situacích kdykoli SQL Server myslíte si, že databáze je mimo zotavení.
Screenshot chybové zprávy:
Přesné vysvětlení:
Data v souboru MDF jsou uložena jako 8 kB stránky. Každá stránka má volitelné pole kontrolního součtu.
Pokud příkaz DBCC CHECKDB najde hodnoty kontrolního součtu na stránce záhlaví, stránce PFS a na některých datových stránkách jsou neplatné a nemůže problém vyřešit, nahlásí tuto chybu (Zpráva 824). Pokud je korupce závažná, může docházet k nepřetržitému mazání (Zpráva 824) nebo následovaná další chybou (Zpráva 7909).
Můžete použít náš produkt DataNumen SQL Recovery obnovit data z poškozeného souboru MDF a vyřešit tuto chybu.
Ukázkové soubory:
Ukázka poškozených souborů MDF, které způsobí chybu (Jedna chyba 824 zprávy):
SQL Server verze | Poškozený soubor MDF | Soubor MDF opraven DataNumen SQL Recovery |
SQL Server 2014 | Chyba1_3.mdf | Chyba1_3_fixed.mdf |
Ukázka poškozených souborů MDF, které způsobí chybu (Trvalé chyby 824 zpráv):
SQL Server verze | Poškozený soubor MDF | Soubor MDF opraven DataNumen SQL Recovery |
SQL Server 2014 | Chyba1_1.mdf | Chyba1_1_fixed.mdf |
Ukázka poškozených souborů MDF, které způsobí chybu (Chyba zprávy 824 následovaná chybou zprávy 7909):
SQL Server verze | Poškozený soubor MDF | Soubor MDF opraven DataNumen SQL Recovery |
SQL Server 2014 | Chyba1_2.mdf | Chyba1_2_fixed.mdf |