Симптом:

Кога користите DBCC CHECKDB со ПОПРАВКА_ALLOW_DATA_LOSS параметар за поправка на оштетена база на податоци .MDF, како ова:

DBCC CHECKDB (xxxx, 'REPAIR_ALLOW_DATA_LOSS')

ја гледате следнава порака за грешка:

Msg 5028, Ниво 16, состојба 4, линија 4
Системот не може да активира доволно база на податоци за повторно да го изгради дневникот.
Резултати од DBCC за 'xxxx'.
CHECKDB откри 0 грешки во распределбата и 0 грешки во конзистентноста во базата на податоци „xxxx“.
Msg 7909, Ниво 20, состојба 1, линија 4
Поправањето на режимот за итни случаи не успеа. Мора да се вратите од резервната копија.

каде што „xxxx“ е име на расипаната база на податоци за МДФ што се санира.

MSG 5028 грешката не е ниту грешка во распределбата или грешка во конзистентноста.

Додека MSG 7909 е тешка грешка што може да се појави во многу ситуации кога и да е SQL Server сметаат дека базата на податоци е надвор од обновување.

Снимка на екранот од порака за грешка:

Прецизно објаснување:

Порака за грешка (MSG 5028) се чини дека е поврзана со датотеката LOG. Сепак, ова е погрешна пријава. Вистинскиот проблем сè уште е предизвикан од корупција на базата на податоци за МДФ.

Можете да го користите нашиот производ DataNumen SQL Recovery за да ги вратите податоците од оштетената датотека МДФ и да ја решите оваа грешка.

Примерок датотеки:

Пример за корумпирани датотеки МДФ што ќе предизвикаат MSG 5028 грешка:

SQL Server верзија Корумпирана датотека МДФ МДФ-датотека поправена од DataNumen SQL Recovery
SQL Server 2014 Грешка3.mdf Грешка3_fixed.mdf