統計情報を収集するには
提供:DB2逆引きWiki
【DB2逆引きリファレンス目次】 【DB2逆引きリファレンス目次#チューニング編】 【DB2逆引きリファレンス目次#アクセスプラン】
目次 |
前提
- データベース接続が必要
- 以下のいずれかが必要: SYSADM権限, SYSCTRL権限, SYSMAINT権限, DBADM権限, 表に対するCONTROL特権, LOAD特権
解説
統計情報を収集するには、CLPのRUNSTATSコマンドを用います。
RUNSTATS ON TABLE 表名 [ インデックス指定 ] [ALLOW アクセス指定 ]
- 表名
- 統計情報を取得する表の名前を指定します。スキーマ名も含んだ完全修飾名として指定する必要があります。
- インデックス指定
-
インデックスの統計情報の取得について以下の形式のいずれかで指定します。
- FOR INDEXES ALL
- 指定した表に関連する索引のみ統計情報を収集または更新します。 指定した表の基本統計情報が未収集の場合は、そちらの収集も行われます。
- AND INDEXES ALL
- 指定した表および関連する索引の統計情報を収集または更新します。
- ALLOW アクセス指定
-
統計情報を収集している間、他のユーザーからの表へのアクセスを許可するかどうか以下の形式のいずれで指定します。
- ALLOW WRITE ACCESS
- 書き込みおよび読み込みのアクセスを許可します。
- ALLOW READ ACCESS
- 読み込みのアクセスのみ許可します。
使用例
表(ここではdb2inst1.employee)の統計情報のみを収集する例。
db2 ==> RUNSTATS ON TABLE db2inst1.employee↓
表(ここではdb2inst1.employee)およびその索引の統計情報を収集する例。
db2 ==> RUNSTATUS ON TABLE db2inst1.employee AND INDEXES ALL↓
注意
- 静的SQLを利用したアプリケーションが存在する場合は、収集した統計情報を反映するために再バインドを実行してください。
- 動的SQLを用いたアプリケーションが存在する場合は、構成パラメータを変更後にパッケージキャッシュを初期化してください。