Attribute | 值 |
---|---|
产品名称 | SQL Server |
事件 ID | 2534 |
事件源 | MSSQLSERVER |
组件 | SQLEngine |
符号名称 | DBCC_PAGE_ALLOCATED_TO_OTHER_OBJECT |
消息正文 | 表错误:页 P_ID 的页头表明它已分配给对象 ID O_ID,索引 ID I_ID,分区 ID PN_ID,分配单元 ID A_ID(类型为 TYPE),但是实际上分配给了另一对象。 |
页头包含分配单元 ID A_ID,但该分配单元的索引分配映射 (IAM) 页都未分配该页。 因此,页头包含错误的分配单元 ID,而且该页还将具有一个匹配的 MSSQLServer_2533 错误,对应于实际分配该页的分配单元 ID。
运行硬件诊断并更正任何问题。 也可以通过检查 Microsoft Windows 系统和应用程序日志以及 SQL Server 错误日志来查看是否存在由硬件故障导致的错误。 修复日志中包含的所有与硬件相关的问题。
如果持续遇到数据损坏问题,请尝试分别换下不同的硬件组件以确定问题所在。 进行检查以确保系统未启用磁盘控制器上的写缓存。 如果怀疑写入缓存是问题起因,请与硬件供应商联系。
最后,您可能会发现,切换到全新的硬件系统是解决问题的极佳途径。 此切换操作可能包括重新格式化磁盘驱动器和重新安装操作系统。
如果出现的问题与硬件无关,并且您确信有可用的干净备份,请从备份中还原数据库。
如果不存在干净的可用备份,请运行不带 REPAIR 子句的 DBCC CHECKDB 以确定损坏程度。 建议使用 DBCC CHECKDB 的 REPAIR 子句。 接下来,请运行带适当 REPAIR 子句的 DBCC CHECKDB 修复损坏的数据。
注意
如果您不确定运行带有 REPAIR 子句的 DBCC CHECKDB 会对数据造成何种影响,请在运行该语句前与您的主要支持提供商联系。
如果运行具有 REPAIR 子句的 DBCC CHECKDB 无法解决存在的问题,请与主要支持提供商联系。
如果索引存在,则 REPAIR 将重新生成索引。
注意
对匹配的 MSSQLSERVER_2533 错误运行 REPAIR 将在重新生成之前释放页。
注意
此修复可能会导致数据丢失。