アクセスプランを確認するには

提供: DB2逆引きWiki
移動: 案内, 検索

DB2逆引きリファレンス目次】 【DB2逆引きリファレンス目次#チューニング編】 【DB2逆引きリファレンス目次#アクセスプラン

目次

前提

  • 以下のいずれかが必要: SYSADM権限, DBADM権限
  • もしくは以下の特権すべて: システムカタログビューに対するSELECT特権、db2expln、db2exsrvおよびdb2exdynパッケージに対するEXECUTE権限、データベースに対するBINDADD特権(動的SQLの場合)、アクセスプランを確認したいSQLを実行するために必要な特権

解説

SQLのアクセスプランを確認するには、db2explnコマンドを用います。

db2expln -d データベース別名 [-user ユーザー名 パスワード ] 出力先指定   パッケージもしくはSQL指定 [-graph]

データベース別名
接続するデータベースの別名を指定します。別名をつけてカタログしている場合以外はデータベース名を指定します。
-user ユーザー名 パスワード
データベースへの接続にユーザー名とパスワードが必要であれば指定します。
出力先指定
出力結果の出力先を以下のいずれかで指定します。
-output 出力ファイル名
指定したファイルに出力します。
-terminal
標準出力に出力します。

パッケージもしくはSQL指定
アクセスプランを確認するSQLを以下のいずれの形式で指定します。
-schema スキーマ名 -package パッケージ名
パッケージに含まれる静的SQLのアクセスプランを確認します。
-stetement "SQLステートメント"
単一のSQLステートメントのアクセスプランを確認します。SQLステートメントは必ず二重引用符(")で括ってください。
-stmtfile ファイル名 [-terminater 終端記号 ]
ファイルに含まれている複数のSQLステートメントのアクセスプランを確認します。

-graph
出力にアクセスプランのグラフを含めます。

使用例

データベース(ここではsample)に接続し、SQLステートメントのアクセスプランを標準出力に出力する例。

$ db2expln -database sample -terminal -statement "SELECT * FROM sample"↓

参照

個人用ツール
名前空間

変種
操作
案内
ツール