症状:
当使用DBCC CHECKDB与REPAIR_ALLOW_DATA_LOSS参数来修复损坏的。mdf数据库,像这样:
DBCC CHECKDB(xxxx, ' REPAIR_ALLOW_DATA_LOSS ')
您将看到以下错误消息:
信息5028,16层,4号状态,4线
系统无法激活足够的数据库来重新生成日志。
' xxxx '的DBCC结果。
CHECKDB在数据库“xxxx”中发现0个分配错误和0个一致性错误。
编号7909,20层,状态1,4号线
紧急模式修复失败。必须从备份中恢复。
其中' xxxx '是正在修复的损坏的MDF数据库的名称。
味精5028错误既不是分配错误,也不是一致性错误。
而味精7909这是一个严重的错误,可能发生在许多情况下,每当SQL Server认为数据库是不可恢复的。
错误提示截图:
精确的解释:
错误消息(味精5028)似乎与LOG文件有关。然而,这是一个错误的报道。实际的问题仍然是由MDF数据库的损坏引起的。
你可以使用我们的产品DataNumen SQL恢复从损坏的MDF文件中恢复数据并解决此错误。
示例文件:
示例损坏MDF文件,将导致味精5028错误:
SQL Server版本 | 损坏的MDF文件 | MDF文件固定DataNumen SQL恢复 |
SQL Server 2014 | Error3.mdf | Error3_fixed.mdf |