客户首先想到把质疑的sql数据库拿到另一台机器上尝试恢复。
首先重建一个和这个数据库同名的数据库,然后停止数据库服务,然后把坏的那个数据库的mdf文件替换进来,然后把数据库变成紧急模式和单用户状态,再用dbcc checkdb(质疑数据库),dbcc checkdb(质疑数据库,repair_allow_data_loss)修复数据库,可是数据库报错824。
如下图:
错误如下:
MedImg的 DBCC 结果。
消息 824,级别 24,状态 2,第 1 行
SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0x60eb8e61,但实际为: 0xe0cb8e41)。
在文件 'E:盘mdf' 中、偏移量为 0x000000000b4000 的位置对数据库 ID 23 中的页 (1:90) 执行 读取 期间,
发生了该错误。SQL Server 错误日志或系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重错误条件,
必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致; 有关详细信息,请参阅 SQL Server 联机丛书。
MedImg的 DBCC 结果。
消息 824,级别 24,状态 2,第 1 行
SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0x60eb8e61,但实际为: 0xe0cb8e41)。
在文件 'E:盘mdf' 中、偏移量为 0x000000000b4000 的位置对数据库 ID 23 中的页 (1:90) 执行 读取 期间,
发生了该错误。SQL Server 错误日志或系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重错误条件,
必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致; 有关详细信息,请参阅 SQL Server 联机丛书。
提示以上错误信息以后,客户不知道怎么操作了,联系到我们
我们的技术人员历经5个小时,终将数据修复成功,客户非常满意,保证了正常生产的运行。
重要提醒:
数据无价,要经常备份,保证数据安全,发生问题,一定要找专业人员处理!