阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

SQL2008R2下数据库修复一例

111次阅读
没有评论

共计 1109 个字符,预计需要花费 3 分钟才能阅读完成。

某天访问某个数据库的时候,系统报错。连上去看了一下,服务器是 SQL2008R2。由于有上次修复的经验,先使用 DBCC 查看数据库情况。

DBCC 的返回:

XXXXXXXXXXX 发生异常数据库 ID 7,页 (1:1350625) 已标记为 RestorePending,可能表明磁盘已损坏。要从此状态恢复,请执行还原操作。

消息 8978,级别 16,状态 1,第 1 行
表错误: 对象 ID 1195151303,索引 ID 2,分区 ID 72057594063421440,分配单元 ID 72057594074234880 (类型为 In-row data)。页 (1:387592) 缺少上一页 (1:1350625) 对它的引用。可能是因为链链接有问题。
消息 8928,级别 16,状态 1,第 1 行
对象 ID 1195151303,索引 ID 2,分区 ID 72057594063421440,分配单元 ID 72057594074234880 (类型为 In-row data): 无法处理页 (1:1350625)。有关详细信息,请参阅其他错误消息。
消息 8939,级别 16,状态 98,第 1 行
表错误: 对象 ID 1195151303,索引 ID 2,分区 ID 72057594063421440,分配单元 ID 72057594074234880 (类型为 In-row data),页 (1:1350625)。测试 (IS_OFF (BUF_IOERR, pBUF->bstat)) 失败。值为 12716041 和 -6。
消息 8976,级别 16,状态 1,第 1 行
表错误: 对象 ID 1195151303,索引 ID 2,分区 ID 72057594063421440,分配单元 ID 72057594074234880 (类型为 In-row data)。在扫描过程中未发现页 (1:1350625),但该页的父级 (1:1231035) 和上一页 (1:799122) 都引用了它。请检查以前的错误消息。

考虑到该数据库为生产数据库,且频繁读写,DBCC 修复时间无法预计,故尝试手工修复。

首先查看 ID 为 1195151303 的对象:

select * from sys.objects where object_id=’1195151303′

查询结果显示该对象是一个数据表,名称就是 DBCC 信息开始的表名。

 

注意到出错信息显示“索引 ID 2”,怀疑是索引损坏,查询该表所有索引

select * from sys.indexes where object_id=’1195151303′

结果显示,该索引是一个非聚集索引兼主键。

删除并重建该索引,再次 DBCC,未报告错误。

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-09/146985.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计1109字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中