сімптом:
пры выкарыстанні DBCC CHECKDB з REPAIR_ALLOW_DATA_LOSS параметр для выпраўлення пашкоджанай базы дадзеных .MDF, напрыклад:
DBCC CHECKDB (хххх, 'REPAIR_ALLOW_DATA_LOSS')
вы бачыце наступнае паведамленне пра памылку:
Msg 5028, узровень 16, штат 4, лінія 4
Сістэма не змагла актываваць дастатковую колькасць базы дадзеных для аднаўлення часопіса.
DBCC вынікі для "хххх".
CHECKDB знайшоў 0 памылак размеркавання і 0 памылак паслядоўнасці ў базе дадзеных "хххх".
Msg 7909, узровень 20, штат 1, лінія 4
Не ўдалося адрамантаваць аварыйны рэжым. Вы павінны аднавіць яго з рэзервовай копіі.
дзе "хххх" - назва пашкоджанай базы дадзеных МДФ, якая падлягае рамонту.
Паведамленне 5028 памылка не з'яўляецца памылкай размеркавання альбо памылкай паслядоўнасці.
У той час як Паведамленне 7909 з'яўляецца сур'ёзнай памылкай, якая можа паўстаць у многіх сітуацыях SQL Server думаю, што база дадзеных не падлягае аднаўленню.
Здымак экрана паведамлення пра памылку:
Дакладнае тлумачэнне:
Паведамленне пра памылку (Паведамленне 5028), падобна, звязаны з файлам LOG. Аднак гэта няправільнае паведамленне. Фактычная праблема па-ранейшаму выклікана карупцыяй базы дадзеных МДФ.
Вы можаце выкарыстоўваць наш прадукт DataNumen SQL Recovery каб аднавіць дадзеныя з пашкоджанага файла MDF і выправіць гэтую памылку.
Прыклады файлаў:
Прыклад пашкоджаных файлаў MDF, якія будуць выклікаць Паведамленне 5028 памылка:
SQL Server версія | Пашкоджаны файл MDF | Файл MDF выпраўлены DataNumen SQL Recovery |
SQL Server 2014 | Памылка3.mdf | Памылка3_fixed.mdf |