Кога користите Microsoft SQL Server за да прикачите или да пристапите до оштетена датотека со бази на податоци МДФ, ќе видите разни пораки за грешки, што може да бидат малку збунувачки за вас. Затоа, тука ќе се обидеме да ги наведеме сите можни грешки, подредени според нивната фреквенција. За секоја грешка, ќе го опишеме неговиот симптом, ќе ја објасниме нејзината прецизна причина и ќе дадеме примерок датотеки, како и датотеката поправена од нашата DataNumen SQL Recovery, за да можете подобро да ги разберете. Подолу ќе користиме „xxx.MDF“ за да го искажеме вашиот корумпиран SQL Server Име на датотека на базата на податоци МДФ.
Врз основа на SQL Server или CHECKDB пораки за грешки, постојат три вида грешки што ќе предизвикаат неуспех:
-
- Грешки во распределбата: Знаеме дека податоците во датотеките МДФ и НДФ се распределени како страници. И, постојат некои посебни страници што се користат за управување со распределбата, како што следува:
Тип на страница | Опис |
Страница за игри | Чувајте информации за глобалната карта за распределување (ГАМ). |
СГАМ страница | Чувајте ги споделените информации за мапата за глобална распределба (СГАМ). |
IAM страница | Информации за мапа за алокација на индекс (ИАМ). |
Страна PFS | Чувајте информации за алокација на PFS. |
Ако некоја од горенаведените страници за распределба има грешки или податоците управувани од овие страници за распределба не се во согласност со информациите за распределба, тогаш SQL Server или CHECKDB ќе извести алокација грешки.
- Грешки во постојаноста: на страници што се користат за складирање на податоци, вклучително и страници со податоци и индексни страници, доколку SQL Server или CHECKDB најдат каква било недоследност помеѓу содржината на страницата и контролниот збир, тогаш тие ќе пријават грешки во конзистентност.
- Сите други грешки: Можеби има и други грешки кои не спаѓаат во горенаведените две категории.
- xxxx.mdf не е примарна датотека со база на податоци. (Мајкрософт SQL Server, Грешка: 5171)
- Заглавието за датотеката 'xxxx.mdf' не е важечко заглавие на датотека за база на податоци. Имотот со големина на датотека е неточен. (Microsoft SQL Server, Грешка: 5172)
- SQL Server откри логичка I / O грешка заснована на конзистентност: неправилна проверка на збирот
- SQL Server откри логичка I / O грешка базирана на конзистентност: искината страница
- По грешка избришете некои записи или некои табели во базата на податоци.
SQL Server има вградена алатка наречена DBCC, кој има CHECKDB ПРОВЕРЕНО опции што можат да помогнат да се поправи расипаната база на податоци за МДФ. Сепак, за сериозно оштетените датотеки со бази на податоци MDB, DBCC CHECKDB ПРОВЕРЕНО исто така ќе пропадне.
Грешки во постојаноста пријавени од CHECKDB:
- SQL Server откри логичка I / O грешка заснована на конзистентност: неправилна проверка на збирот
- Редот во sys.xxx нема соодветен ред во sys.xxx.
- Грешка во табелата: ID на објектот ##, ID на индексот ## ќе биде повторно изграден.
- Овој индекс на системска табела не може да се пресоздаде.
- ID на објектот ##, ID на индексот ##, ID на партицијата ##, ID на единицата за распределување ## (тип Непознат), ID на страницата (##: 560) содржи неправилен ID на страницата во заглавието на страницата.
Грешки во распределбата пријавени од CHECKDB:
- Страницата на мапата за распределување на индекс (IAM) е означена со Следниот покажувач на страницата IAM
- Степенот (##: ##) во ID-то на базата на податоци ## е означен распределен во ГАМ, но ниту еден SGAM или IAM не го распределил.
Сите други грешки пријавени од CHECKDB:
- Не успеа: (- #######) Извршувањето на барањето „DBCC CHECKDB (xxxx) СО НЕ_INFOMSGS“ не успеа со следната грешка: „xxxx“.
- I / O грешка (лоша идентификација на страницата) откриена при читање при поместување 0x ###### во датотеката 'xxxx.mdf'.
- Системот не може да се активира доволно од базата на податоци за да се изгради дневникот
- Загуба на податоци при поправка со CHECKDB
- Датотеката се чини дека е скратена од оперативниот систем.
- За време на повторното извршување на најавената операција во базата на податоци „xxxx“, се појави грешка при идентификацијата на записот на дневникот.