使用 sp_iqcheckdb 分析索引一致性。
以下是运行 sp_iqcheckdb 并存在索引不一致问题时您所看到的输出类型的示例。DBCC 将显示有关所检查的索引的摘要信息和详细信息。报告顶部的 Index Summary 部分指出是否发现不一致的索引。不一致索引的名称和问题类型可在索引统计信息部分找到。带有星号 (***) 的行中包含有关不一致索引的信息。
在报告的错误中,存在额外的 RID 或其缺少、重复等错误是最常见的错误类型。这些错误表明索引错误地表示了数据,并可能会给出不正确的结果或导致其它故障。通常,这些错误会伴随有其它指出不一致的具体信息的错误。
在该示例中,DBCC 报告了不一致的 HNG 索引。因为相应的 FP 索引检查结果为良好,所以该 FP 索引可与 sp_iqrebuildindex 一起用于修复损坏的 HNG 索引。
该示例执行的命令行是 sp_iqcheckdb 'verify database' 。请注意,DBCC 生成的是一个详细的报告,但在该示例中已删除某些行的输出:
Stat Value Flags
========================|==================================|=====
DBCC Verify Mode Report | |
========================|==================================|=====
DBCC Status |Errors Detected |***
DBCC Work units | |
Dispatched |75 |
DBCC Work units | |
Completed |75 |
========================|==================================|=====
Index Summary | |
========================|==================================|=====
Inconsistent Index | |
Count |1 |***
Verified Index | |
Count |85 |
========================|==================================|=====
Index Statistics | |
========================|==================================|=====
Inconsistent Index |contact.DBA.idx01_HNG |***
...
Verified Index |fin_data.DBA.ASIQ_IDX_T209_C3_HG |
Verified Index |fin_data.DBA.ASIQ_IDX_T209_C4_FP |
...
Verified Index |employee.DBA.ASIQ_IDX_T212_C19_FP |
Verified Index |employee.DBA.ASIQ_IDX_T212_C20_FP |
Verified Index |iq_dummy.DBA.ASIQ_IDX_T213_C1_FP |
Extra Index RIDs |5 |***
FP Indexes Checked |68 |
HNG Indexes Checked |1 |
HG Indexes Checked |17 |
| |
sp_iqcheckdb 检测到的不一致的索引是 contact.DBA.idx01_HNG。
当再次运行 sp_iqcheckdb 仅检查不一致的索引时,会生成以下 DBCC 输出。为该示例执行的命令行是 sp_iqcheckdb 'verify index DBA.contact.idx01_HNG' :
Stat Value Flags
=========================|==================================|=====
DBCC Verify Mode Report | |
=========================|==================================|=====
DBCC Status |Errors Detected |***
DBCC Work units | |
Dispatched |1 |
DBCC Work units | |
Completed |1 |
| |
=========================|==================================|=====
Index Summary | |
=========================|==================================|=====
Inconsistent Index | |
Count |1 |***
Verified Index | |
Count |1 |
| |
=========================|==================================|=====
Index Statistics | |
=========================|==================================|=====
Inconsistent Index |contact.DBA.idx01_HNG |***
Verified Index |contact.DBA.ASIQ_IDX_T206_C1_FP |
Extra Index RIDs |5 |*****
FP Indexes Checked |1 |
HNG Indexes Checked |1 |
| |
=========================|==================================|=====
DBCC 输出包含与索引问题有关的消息。
DBCC 消息描述/操作Inconsistent Index CountDBCC 找到的不一致索引数。Inconsistent IndexDBCC 找到的不一致索引名。Extra Index RIDsMissing Index RIDsDuplicate Index RIDs对于所有不一致的索引出现不一致的总行数。Bitmap Verify Errors所有数据库对象中不一致的位图的总数FP Lookup Table Inconsistencies无法修复的错误,其中单字节或双字节 FP 内部不一致。Non-Completed Index Count因为检查时发生异常导致无法验证的索引的数目。Non-Completed Index因为检查时发生异常导致未验证的索引的名称。如果异常为版本过高、内存不足或缓冲区不足错误,请提交 DBCC 连接并重新运行 DBCC。VDO Incorrect First Available FieldsVDO Incorrect Next Available FieldsVDO Incorrect Used Count FieldsVDO Incorrect In-use BitvecVDO Incorrect In-use BitmapVDO Incorrect Partial BitmapVDO Incorrect Deleted Bitmaps无法修复的错误,可能导致整个表无法访问。您必须强制删除不一致的表以解决这些错误。HG Missing GroupsHG Extra GroupsHG Extra KeysHG Missing KeysB-Tree Invalid Item CountB-Tree Invalid Item CountG-Array Empty Page ErrorsG-Array Bad Group Type ErrorsG-Array Out of Order Group ErrorsHigh Group 索引特定的错误。