SqlServer 异常报逻辑 IO 错误和无法NOLOCK方式扫描

SqlServer 异常报逻辑 IO 错误和无法NOLOCK方式扫描,第1张

概述今天有同事报MSSQL数据库发生异常,看了下错误信息有两个: 1.SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 1:94511,但实际为 2:-268434432)。在文件 'F:\justyle.mdf' 中、偏移量为 0x0000002e25e000 的位置对数据库 ID 8 中的页 (1:94511) 执行 读取 期间,发生了该错误。SQL Serv

今天有同事报MSsql数据库发生异常,看了下错误信息有两个:

1.sql Server 检测到基于一致性的逻辑 I/O 错误 pageID 不正确(应为 1:94511,但实际为 2:-268434432)。在文件 'F:\justyle.mdf' 中、偏移量为 0x0000002e25e000 的位置对数据库 ID 8 中的页 (1:94511) 执行 读取 期间,发生了该错误。sql Server 错误日志或系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致;有关详细信息,请参阅 sql Server 联机丛书。

2.错误   601
严重级别   12
消息正文
由于数据移动,未能继续以   NolOCK   方式扫描。

做数据库检查时发现有很多的错误信息
检查语句:
dbcc checkdb(eol_tcclub)

消息 8928,级别 16,状态 1,第 1 行
对象 ID 1893021925,索引 ID 1,分区 ID 72057594100776960,分配单元 ID 72057594116243456 (类型为 LOB data): 无法处理页 (1:3672)。有关详细信息,请参阅其他错误消息。
消息 8939,级别 16,状态 98,第 1 行
表错误: 对象 ID 1893021925,索引 ID 1,分区 ID 72057594100776960,分配单元 ID 72057594116243456 (类型为 LOB data),页 (1:3672)。测试(IS_OFF (BUF_IOERR,pBUF->bstat))失败。值为 12716041 和 -4。
消息 8928,级别 16,状态 1,第 1 行
对象 ID 1893021925,索引 ID 1,分区 ID 72057594100776960,分配单元 ID 72057594116243456 (类型为 LOB data): 无法处理页 (1:3673)。有关详细信息,请参阅其他错误消息。

消息 2575,级别 16,状态 1,第 1 行
索引分配映射(IAM)页 (0:0) (位于对象 ID 1782349464,索引 ID 0,分区 ID 72057594071941120,分配单元 ID 72057594081574912 (类型为 In-row data))的下一个指针指向了 IAM 页 (1:6238),但扫描过程中检测不到它。
消息 7965,级别 16,状态 2,第 1 行
表错误: 由于无效的分配(IAM)页,无法检查对象 ID 1782349464,索引 ID 0,分区 ID 72057594071941120,分配单元 ID 72057594081574912 (类型为 In-row data)。
消息 8906,级别 16,状态 1,第 1 行
数据库 ID 11 中的页 (1:6238) 在 SGAM (1:3) 和 PFS (1:1) 中进行了分配,但未在任何 IAM 中分配。PFS 标志 'IAM_PG MIXED_EXT ALLOCATED   0_PCT_FulL'。
消息 8939,级别 16,状态 98,第 1 行
表错误: 对象 ID 1782349464,索引 ID 0,分区 ID 72057594071941120,分配单元 ID 72057594081574912 (类型为 In-row data),页 (1:6238)。测试(IS_OFF (BUF_IOERR,pBUF->bstat))失败。值为 29493257 和 -4。
消息 8939,级别 16,状态 98,第 1 行

消息 8964,级别 16,状态 1,第 1 行
表错误: 对象 ID 160107711,索引 ID 1,分区 ID 72057594083409920,分配单元 ID 72057594094288896 (类型为 LOB data)。位于页 (1:3773),槽 0,文本 ID 9478209536 的行外数据节点未被引用。
消息 8964,级别 16,状态 1,第 1 行
表错误: 对象 ID 160107711,索引 ID 1,分区 ID 72057594083409920,分配单元 ID 72057594094288896 (类型为 LOB data)。位于页 (1:3774),槽 0,文本 ID 9478209536 的行外数据节点未被引用。
消息 8964,级别 16,状态 1,第 1 行
表错误: 对象 ID 160107711,索引 ID 1,分区 ID 72057594083409920,分配单元 ID 72057594094288896 (类型为 LOB data)。位于页 (1:3775),槽 0,文本 ID 9478209536 的行外数据节点未被引用。
消息 8964,级别 16,状态 1,第 1 行
表错误: 对象 ID 160107711,索引 ID 1,分区 ID 72057594083409920,分配单元 ID 72057594094288896 (类型为 LOB data)。位于页 (1:3781),槽 0,文本 ID 9480241152 的行外数据节点未被引用。
消息 8929,级别 16,状态 1,第 1 行
对象 ID 160107711,索引 ID 1,分区 ID 72057594083409920,分配单元 ID 72057594094354432 (类型为 In-row data): 在 ID 为 9478209536 的行外数据中发现错误,该数据由 RID = (1:3540:0) 标识的 data 记录所有
消息 8929,级别 16,状态 1,第 1 行
对象 ID 160107711,索引 ID 1,分区 ID 72057594083409920,分配单元 ID 72057594094354432 (类型为 In-row data): 在 ID 为 9480241152 的行外数据中发现错误,该数据由 RID = (1:6867:7) 标识的 data 记录所有
消息 8929,级别 16,状态 1,第 1 行
对象 ID 160107711,索引 ID 1,分区 ID 72057594083409920,分配单元 ID 72057594094354432 (类型为 In-row data): 在 ID 为 9473818624 的行外数据中发现错误,该数据由 RID = (1:6867:10) 标识的 data 记录所有

Tol_TICKETrefundLOG的DBCC 结果。
对象'Tol_TICKETrefundLOG' 的0 页中有0 行。
CHECKDB 在数据库'Eol_TCGROUP' 中发现13 个分配错误和28 个一致性错误。
DBCC 执行完毕。如果DBCC 输出了错误信息,请与系统管理员联系。


根据对象ID号,可以找出对象,select * from sys.sysobjects a where a.ID = '160107711',点击该对象查看属性时也能发现上述错误信息。或者用命令方式 DBCC CHECKtable('TBillTemplateXml')查看错误信息


设置单用户模式:

USE master; ALTER DATABASE eol_tcgroup SET MulTI_USER;

    --修复的时候设置单用户还可以用alter database ** set single_user来,但再修复时老是提示有其他连接,修复失败,此时再用立即回滚的方式即可

GO

修复语句:

DBCC CHECKDB ('eol_tcgroup',repair_allow_data_loss)   --会丢失数据   --DBCC CHECKDB ('eol_tcgroup',repair_rebuild)             --不会丢失数据


知道异常表的情况下也可以单独对该表进行修复 DBCC CHECKtable('TBillTemplateXml',REPAIR_REBUILD )

最后要切换回多用户模式

USE master;ALTER DATABASE eol_tcgroup SET MulTI_USER;

修复时修复语句可以执行多次,极有可能会在下一次修复成功。万一还是修不好,那只能用备份还原了。

总结

以上是内存溢出为你收集整理的SqlServer 异常报逻辑 I/O 错误和无法NOLOCK方式扫描全部内容,希望文章能够帮你解决SqlServer 异常报逻辑 I/O 错误和无法NOLOCK方式扫描所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1178758.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存