0
点赞
收藏
分享

微信扫一扫

QLSERVER 2019数据库(可疑) 数据修复案例

Java旺 04-10 13:45 阅读 1

 2019 数据库 , 在正常使用过程中 , 服务器突然断电 , 重新启动服务器后 , 数据库变为(可疑)。

【数据恢复故障分析】

   由于数据库在正常读写操作过 , 服务器突然断电 , 导致数据库无法把所有缓冲中的数据写入到数据库文件中 , 所以会使数据内部索引及数据区损坏。

【数据恢复过程】

 1.通过命令对损坏的数据库进行扫描

          USE master;           ALTER DATABASE 你的数据库名 SET EMERGENCY;

         ---首先,你需要将数据库设置为单用户模式,然后修复数据库:

         ALTER DATABASE 你的数据库名 SET SINGLE_USER  

          DBCC CHECKDB('你的数据库名', REPAIR_ALLOW_DATA_LOSS);  

 2. 使用 DBCC 检测数据库,发现有“并闩锁页”错误,具体错误提示:

 对象 ID 772952063,索引 ID 0,分区 ID 72057602335309824,分配单元 ID 72057609872080896 (类型为 In-row data): 无法处理页 (1:5363528)。有关详细信息,请参阅其他错误消息。

       该错误已修复。

消息 8939,级别 16,状态 98,第 2 行

表错误: 对象 ID 772952063,索引 ID 0,分区 ID 72057602335309824,分配单元 ID 72057609872080896 (类型为 In-row data),页 (1:5363528)。测试(IS_OFF (BUF_IOERR, pBUF->bstat))失败。值为 2059 和 -6。

       该错误已修复。

消息 8928,级别 16,状态 1,第 2 行

对象 ID 772952063,索引 ID 0,分区 ID 72057602335309824,分配单元 ID 72057609872080896 (类型为 In-row data): 无法处理页 (1:5363536)。有关详细信息,请参阅其他错误消息。

       该错误已修复。

消息 8939,级别 16,状态 98,第 2 行

表错误: 对象 ID 772952063,索引 ID 0,分区 ID 72057602335309824,分配单元 ID 72057609872080896 (类型为 In-row data),页 (1:5363536)。测试(IS_OFF (BUF_IOERR, pBUF->bstat))失败。值为 2059 和 -6。

       该错误已修复。

 3. 通过对 MDF 文件自身内部结构分析 , 发现有多个页损坏 , 通过计算 , 重新回写正确的值 , 数据库可正常读取 .

           恢复正常运行: 最后,将数据库恢复到正常模式,并允许多用户访问:

          ALTER DATABASE 你的数据库名 SET ONLINE;

          ALTER DATABASE 你的数据库名 SET MULTI_USER;  

【数据恢复结论】

   历时 1小时, 100% 数据恢复成功

【后记】

数据库在使用过程中,如遇到突然断电的情况,数据库损坏的机率很大,建议客户实时备份数据。数据库损坏后不要盲目进行修复处理,先做好备份后再进行其它操作。

举报

相关推荐

0 条评论