KB3211304-修复:当你在 SQL Server 2012、2014或2016中的主副本上执行 DBCC CHECKDB 时出现错误5262

症状

假设你使用 SQL Server 2012、2014或 2016 AlwaysOn AlwaysOn 可用性组,并且你的数据库包含一些损坏的页面,因为出现故障的存储驱动程序出现故障。 在这种情况下,"自动页面修复" 功能可能会在后台以静默方式成功修复页面。 但是,DBCC CHECKDB 或 DBCC CHECKTABLE 命令不适合这些修复的页面。 此外,你会收到类似于以下内容的错误消息:

Msg 5262、Level 16、State 1、Line line_id 对象 ID object_id、索引 ID index_id、分区 ID partition_id、分配单元 ID alloc_unit_id (类型行内数据)、页面(page_id)、行 row_id: Row 包含 NULL 版本的时间戳,但其版本链指针不为 NULL。 版本链指向页面(0:0),第1槽。

收到此错误消息时,并不意味着数据库损坏。 相反,它指示 DBCC 命令不会识别这些页面是否已修复。 应用此修补程序后,DBCC 命令现在可识别页面已修复,您将不再收到此错误消息。 若要检查已修复的页面,请运行以下动态管理视图(DMV)查询:

select * from msdb..suspect_pages

解决方案

在 SQL Server 的以下累积更新中修复了此问题:

SQL Server 2016 RTM 的累积更新5

SQL Server 2016 SP1 的累积更新2

SQL Server 2014 SP2 的累积更新4

SQL Server 2014 SP1 的累积更新11

SQL Server 2012 SP3 的累积更新8

SQL Server 2012 Service Pack 2 的累积更新16(SP2)

SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 查看 SQL Server 的最新累积更新:

    SQL Server 2016 的最新累计更新

    SQL Server 2014 的最新累积更新

SQL Server 2012 SP3 的最新累积更新

SQL Server 2012 SP2 的最新累积更新

状态

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

参考

了解 Microsoft 用于描述软件更新的 术语

需要更多帮助?

扩展你的技能
了解培训
抢先获得新功能
加入 Microsoft 内部人员

此信息是否有帮助?

谢谢您的反馈意见!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×