db2caem - アクティビティー・イベント・モニター・データ・ツールのキャプチャー・コマンド
db2caem ツールは、アクティビティー・イベント・モニターの作成手順を自動化します。
db2caem コマンドを実行してアクティビティー・イベント・モニターを作成し、SQL ステートメントのデータをキャプチャーできます。 このデータは db2support コマンドで収集されます。 db2caem ツールで収集され生成される情報には、以下のものが含まれます。
- モニター・メトリック (例えば、ステートメント実行の total_cpu_time) を含む、アクティビティー・イベント・モニターでキャプチャーされた詳細アクティビティー情報。
- フォーマット済み EXPLAIN 出力。これには、セクション actuals (アクセス・プラン中の演算子別の統計) が含まれます。
db2caem ツールは、アクティビティー・イベント・モニターを使用して、ステートメントに関する情報をキャプチャーし、その後情報を抽出しフォーマットします。
db2caem ツールは、アクティビティー・イベント・モニターの作成プロセスを自動化します。
- 対象となるステートメントのキャプチャーを使用可能にする。
- ステートメントを呼び出す (各ステートメントは実行後、データベースへの副次作用を防ぐためロールバックされます)。
- 出力情報をフォーマットする (対象となるステートメントのアクティビティー情報のエクスポートおよびキャプチャーされたセクションおよびセクション actuals からのフォーマットされた Explain 出力の生成を含む)。
許可
- アクティビティー・イベント・モニターを作成するには、以下のいずれかの権限が必要です。
- DBADM 権限
- SQLADM 権限
- WLMADM 権限
- アクティビティー・イベント・モニターを作成する必要がない場合は、以下の特権および権限が必要です。
- EXPLAIN_FROM_ACTIVITY プロシージャーに対する EXECUTE 特権
- 指定されたスキーマ内の Explain 表に対する INSERT 特権
- ソース・アクティビティー・イベント・モニターに関するイベント・モニター表に対する SELECT 特権
- アクティビティー・イベント・モニター表の DATAACCESS 権限
- アクティビティー・イベント・モニター表の CONTROL または SELECT 特権
必要な接続
なし
コマンド構文
コマンド・パラメーター
- -d database-name
- 接続先データベースの名前を指定します。
- -u ユーザー ID
- データベースに接続する際に使用するユーザー ID を指定します。
- -p パスワード
- データベースに接続する際のユーザー ID のパスワードを指定します。
- -o 出力パス
- db2caem の出力ファイルが、指定したパスに書き込まれます。
- tn tenant_name
- テナントの名前を指定します。 注: このパラメーターは、 11.5.6以降で使用可能です。
- -h
- ヘルプ情報を表示します。 このオプションを指定すると、他のすべてのオプションは無視され、 ヘルプ情報だけが表示されます。
query-statement-options
- -st query-statement
- アクティビティー・イベント・モニター・データがキャプチャーされる SQL ステートメントを指定します。注: SQL ステートメントは、指定されたデータベースに対してツールによって実行されます。
- -sf query-statement-file
- アクティビティー・イベント・モニター・データがキャプチャーされる SQL ステートメントを含むファイル・パスを指定します。 この-terminatorオプションを使用して、SQLステートメントの終わりを示す文字を指定します。注: SQL ステートメントは、指定されたデータベースに対してツールによって実行されます。
- cs current_schema
- 現行スキーマ名の値を指定します。 注: このパラメーターは、 11.5.6以降で使用可能です。
- fp function_path
- 関数パスの特殊レジスター値を指定します。 注: このパラメーターは、 11.5.6以降で使用可能です。
- -compenv compilation-environment-file
- SQL ステートメントを実行する際に使用されるコンパイル環境を指定します。 コンパイル環境 (comp_env_desc) は BLOB データ・タイプであり、オプション入力としてファイルにより指定します。 オプションが指定されない場合、SQL ステートメントを実行する際にはデフォルトのコンパイル環境が使用されます。
- -tbspname table-space-name
- アクティビティー・イベント・モニターが作成される表スペース名を指定します。 パーティション・データベース環境では、対象となる SQL ステートメントを実行するすべてのデータベース・パーティションにこの表スペースが存在しなければなりません。 オプションが指定されない場合、アクティビティー・イベント・モニターを作成する必要がある際には、デフォルトの表スペースが使用されます。
- -terminator 終了文字
- ファイル内に複数のステートメントがある場合に、–sfSQLファイルのSQLステートメントの終わりを示す文字を指定します。 デフォルトはセミコロンです。
event-monitor-options
以下のオプションは、既存のアクティビティー・イベント・モニターによって既にキャプチャーされている SQL ステートメントを一意に指定します。 一緒に指定することにより、アクティビティー・データおよび Explain 出力を抽出するステートメントを指定します。
注: フォーマット済み Explain 出力は、ステートメントのセクションがキャプチャーされた場合にのみ収集され、フォーマット済み Explain 出力には、ステートメントのセクション actuals がキャプチャーされた場合にのみセクション actuals のみが含まれます。
- -actevm event-monitor-name
- 対象となるステートメントのデータを含む既存のアクティビティー・イベント・モニターの名前を指定します。
- -appid application-id
- 対象となるステートメントを発行したアプリケーションを一意的に識別するアプリケーション ID (appl_id モニター・エレメント) を指定します。
- -uowid uow-id
- 対象となるステートメントが実行された作業単位 ID (uow_id モニター・エレメント) を指定します。
- -actid activity-id
- 対象となるステートメントのアクティビティー ID (activity_id モニター・エレメント) を指定します。
例
以下の例は、db2caem ツールを使用してアクティビティー・イベント・モニターを作成し SQL ステートメントのデータをキャプチャーする方法を示しています。
db2caem –d sample –st "select * from staff"
アクティビティー・イベント・モニターが作成され、詳細情報、セクションと値、および SQL ステートメント「select * from staff」の実行時統計がキャプチャーされます。
db2caem –d sample –sf badquery.sql -terminator $
アクティビティー・イベント・モニターが作成され、詳細情報、セクションと値、および badquery.sql ファイルで指定されている SQL ステートメントの実行時統計がキャプチャーされます。
db2caem –d sample -actevm mymon –appid *LOCAL.mikita.100203234904 -uowid 44 -actid 1
アクティビティー・イベント・モニターの詳細情報、セクションと値、および既存のアクティビティー・イベント・モニターのイベント・モニター・オプションで指定される SQL ステートメントの実行時統計がキャプチャーされます。 db2caem ツールは、この例ではアクティビティー・イベント・モニターを作成しません。
使用上の注意
db2caem ツールを使用してアクティビティー・イベント・モニターを作成し、db2support コマンドで収集できるデータをキャプチャーできます。 DB2CAEM_<timestamp>
directory
は、 db2caem ツールによって取り込まれたすべての情報を含むように生成されます。
db2caem ツールは、SQL ステートメントのパラメーター・マーカーをサポートしません。 例えば、次の照会ステートメントは db2caem ツールと共に使用できません。
SELECT * FROM syscat.tables WHERE tabname=? and tbspaceid =?