上海某公司mdf文件所在扇区有坏道导致数据库损坏的修复
客户端无法连接到服务器, 查看服务器状况,在sql企业管理器中看到数据库已经置疑 。客户停止sql服务, 想先将mdf文件和ldf文件备份出来,但是拷贝过程一直提示冗余报错。
修复过程
检测硬盘有大量坏道,对原硬盘进行镜像, 然后从镜像盘中提取mdf文件和ldf文件;
附加数据库文件,提示ldf文件出错, 去掉该文件直接附加 。 点击表,提示错误601:由于数据移动,未能继续以nolock方式扫描
使用查询器dbcc checkdb
服务器: 消息 8966,级别 16,状态 1,行 1
未能读取并闩锁页 (1:2995)(用闩锁类型 SH)。sysindexes 失败。
8966错误,进一步检测各系统表,有部分记录丢失, 说明到时候会缺表 或少记录现象。
通过修复各系统表和索引,历时3小时成功修复, 经客户确认数据, 98%的记录都修复出来。
