您的位置:首页 > 数据库

SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确

2017-12-22 10:11 519 查看
今天调试测试数据库的时候突然发现数据库不能用了,但是不知道什么原因造成的。

执行代码语句如下:

SELECT count(1) FROM JXCmygps_ALiYun_2017_12_21.dbo.MYGPS_DEVICE_DATA_HISTORY where TIME_DATA > '2017-12-14 0:00:00'


显示消息结果如下:



上网查询了以后,发现下面的方法可以解决。

在有问题的数据库上执行下面的代码:

ALTER DATABASE JXCmygps_ALiYun_2017_12_21/*数据库名称*/ SET SINGLE_USER   --设置为单用户
DBCC CHECKDB (JXCmygps_ALiYun_2017_12_21, repair_allow_data_loss) with NO_INFOMSGS   --允许丢失错误
go
ALTER DATABASE JXCmygps_ALiYun_2017_12_21 SET MULTI_USER   --设置为多用户
go


这个数据库大约有1G左右,修复时间花费了3小时38分18秒。

消息结果如下:

修复: 已为数据库 'JXCmygps_ALiYun_2017_12_21' 中的对象 'dbo.MYGPS_DEVICE_DATA_HISTORY' 成功地重新生成了 Clustered 索引。
修复: 页 (1:65135) 已从对象 ID 471672728,索引 ID 1,分区 ID 72057594048217088,分配单元 ID 72057594049658880 (类型为 In-row data)释放。
修复: 页 (1:65177) 已从对象 ID 471672728,索引 ID 1,分区 ID 72057594048217088,分配单元 ID 72057594049658880 (类型为 In-row data)释放。
消息 8945,级别 16,状态 1,第 2 行
表错误: 将重新生成对象 ID 471672728,索引 ID 1。
该错误已修复。
消息 8928,级别 16,状态 1,第 2 行
对象 ID 471672728,索引 ID 1,分区 ID 72057594048217088,分配单元 ID 72057594049658880 (类型为 In-row data): 无法处理页 (1:65135)。有关详细信息,请参阅其他错误消息。
该错误已修复。
消息 8939,级别 16,状态 98,第 2 行
表错误: 对象 ID 471672728,索引 ID 1,分区 ID 72057594048217088,分配单元 ID 72057594049658880 (类型为 In-row data),页 (1:65135)。测试(IS_OFF (BUF_IOERR, pBUF->bstat))失败。值为 29362185 和 -4。
该错误已修复。
消息 8976,级别 16,状态 1,第 2 行
表错误: 对象 ID 471672728,索引 ID 1,分区 ID 72057594048217088,分配单元 ID 72057594049658880 (类型为 In-row data)。在扫描过程中未发现页 (1:65135),但该页的父级 (1:65563) 和上一页 (1:65134) 都引用了它。请检查以前的错误消息。
该错误已修复。
消息 8978,级别 16,状态 1,第 2 行
表错误: 对象 ID 471672728,索引 ID 1,分区 ID 72057594048217088,分配单元 ID 72057594049658880 (类型为 In-row data)。页 (1:65144) 缺少上一页 (1:65135) 对它的引用。可能是因为链链接有问题。
该错误已修复。
消息 8928,级别 16,状态 1,第 2 行
对象 ID 471672728,索引 ID 1,分区 ID 72057594048217088,分配单元 ID 72057594049658880 (类型为 In-row data): 无法处理页 (1:65177)。有关详细信息,请参阅其他错误消息。
该错误已修复。
消息 8939,级别 16,状态 98,第 2 行
表错误: 对象 ID 471672728,索引 ID 1,分区 ID 72057594048217088,分配单元 ID 72057594049658880 (类型为 In-row data),页 (1:65177)。测试(IS_OFF (BUF_IOERR, pBUF->bstat))失败。值为 29362185 和 -4。
该错误已修复。
消息 8976,级别 16,状态 1,第 2 行
表错误: 对象 ID 471672728,索引 ID 1,分区 ID 72057594048217088,分配单元 ID 72057594049658880 (类型为 In-row data)。在扫描过程中未发现页 (1:65177),但该页的父级 (1:65563) 和上一页 (1:65176) 都引用了它。请检查以前的错误消息。
该错误已修复。
消息 8978,级别 16,状态 1,第 2 行
表错误: 对象 ID 471672728,索引 ID 1,分区 ID 72057594048217088,分配单元 ID 72057594049658880 (类型为 In-row data)。页 (1:65178) 缺少上一页 (1:65177) 对它的引用。可能是因为链链接有问题。
该错误已修复。
CHECKDB 在表 'MYGPS_DEVICE_DATA_HISTORY' (对象 ID 471672728)中发现 0 个分配错误和 8 个一致性错误。
CHECKDB 在表 'MYGPS_DEVICE_DATA_HISTORY' (对象 ID 471672728)中修复了 0 个分配错误和 8 个一致性错误。
CHECKDB 在数据库 'JXCmygps_ALiYun_2017_12_21' 中发现 0 个分配错误和 8 个一致性错误。
CHECKDB 在数据库 'JXCmygps_ALiYun_2017_12_21' 中修复了 0 个分配错误和 8 个一致性错误。


消息截图:



最后执行完成之后。数据库可以正常使用了。



*知识还是需要慢慢积累。

故不积跬步,无以至千里;不积小流,无以成江海。*
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐