сімптом:

пры выкарыстанні 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