MSSQLSERVER_2531
新建日期: 2006 年 4 月 14 日
详细信息
产品名称 |
SQL Server |
产品版本 |
9.0 |
产品内部版本号 |
9.0 |
事件 ID |
2531 |
事件源 |
MSSQLSERVER |
组件 |
SQLEngine |
符号名称 |
DBCC_BTREE_SIBLING_LEVEL_MISMATCH |
消息正文 |
表错误: 对象 ID O_ID,索引 ID I_ID,分区 ID PN_ID,分配单元 ID A_ID(类型为 TYPE)的 B 树级别不匹配,页 P_ID1。级别 LEVEL1 与以前的 P_ID2 中的级别 LEVEL2 不匹配。 |
说明
在 B 树级别上存在两个链接为紧密相邻的页。级别 LEVEL2(在右页 P_ID2 上)与级别 LEVEL1(在左页 P_ID1 上)不匹配。
若要确定哪个页是不正确的,请检查周围的页和相关的两页的内容。此外,查找指示 B 树父子级别不匹配的 MSSQLEngine_8931 错误。
查找硬件故障
运行硬件诊断并更正任何问题。也可以通过检查 Microsoft Windows 系统和应用程序日志以及 SQL Server 错误日志来查看是否存在由硬件故障导致的错误。解决这些日志中包含的所有与硬件相关的问题。
如果存在持久性数据损坏问题,请尝试改用其他的硬件组件来解决此问题。进行检查以确保系统未启用磁盘控制器上的写缓存。如果您怀疑是写缓存出现问题,请与硬件供应商联系。
最后,您可能会发现,切换到全新的硬件系统是解决问题的极佳途径。此切换操作可能包括重新格式化磁盘驱动器和重新安装操作系统。
从备份还原
如果出现的问题与硬件无关,并且您确信有可用的干净备份,请从备份中还原数据库。
运行 DBCC CHECKDB
如果不存在干净的可用备份,请运行不带 REPAIR 子句的 DBCC CHECKDB 以确定损坏程度。建议使用 DBCC CHECKDB 的 REPAIR 子句。然后,运行具有相应 REPAIR 子句的 DBCC CHECKDB 以修复损坏。
注意: |
---|
如果您不确定运行带有 REPAIR 子句的 DBCC CHECKDB 会对数据造成何种影响,请在运行该语句前与您的主要支持提供商联系。 |
如果运行具有 REPAIR 子句的 DBCC CHECKDB 无法解决存在的问题,请与主要支持提供商联系。
运行 REPAIR 选项的结果
REPAIR 将重新生成索引。