IBM Support

[Db2] 無効化された索引の確認方法

Question & Answer


Question

索引の再編成中の中断により、索引が無効化された可能性があります。
無効化された索引や、どの表の索引が無効化されているかを確認する方法はありますか。

Answer

どの表の索引が無効化されているかは、ADMINTABINFO 管理ビューの照会結果から確認することができます。
確認はデータベース単位です。
手順:
  1. インスタンス・オーナーのユーザーとして(Windows は管理者としてログオンして)、データベースに接続します。
    db2 connect to <DB名>
  2. ADMINTABINFO 管理ビューを照会し、INDEXES_REQUIRE_REBUILD が Y の表をリストします。
    db2 "select tabschema, tabname, indexes_require_rebuild from sysibmadm.admintabinfo where INDEXES_REQUIRE_REBUILD='Y'"
    確認例:以下は、sample データベースについて確認する簡単な例です。
    $ db2 connect to sample
    $ db2 "select substr(tabschema,1,32) as tabschema, substr(tabname,1,32) as tabname, indexes_require_rebuild from sysibmadm.admintabinfo where indexes_require_rebuild='Y'"
    
    TABSCHEMA                        TABNAME                          INDEXES_REQUIRE_REBUILD
    -------------------------------- -------------------------------- -----------------------
    DB2INST1                         T1                               Y
      0 record(s) selected.
    
    上記の結果から、DB2INST1.T1 表の索引が無効化されていることがわかります。
 

運用上の考慮点
  • 索引が無効化される原因は様々ですが、上記のように、索引再編成の中断は、発生しやすい原因の一つです。
 
関連情報
お問合せ先
技術的な内容に関して、パスポート・アドバンテージの契約のもと Db2 テクニカル・サポートへお問い合わせください。
Db2 テクニカル・サポート

[{"Type":"MASTER","Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSEPGG","label":"Db2 for Linux, UNIX and Windows"},"ARM Category":[{"code":"a8m500000008PlAAAU","label":"Corruption-\u003EIndex Corruption"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"}]

Document Information

Modified date:
23 December 2023

UID

ibm17091180