リアルタイムSQLモニタ

SQLMonitor_img.png
リアルタイムSQLモニタとは、データベース内でどのような SQL 文が実行されているのかを監視する機能です。
リアルタイムSQLモニタを使用することで、実際に発行されている SQL 文の実行コストや実行計画が確認できますので、
インデックスの追加や ボトルネックとなっている SQL 文の構文見直しの作業を支援することが可能になります。

類似の機能としてSQLキャッチ機能がありますが、主な違いは以下の通りです。

SQLキャッチ リアルタイムSQLモニタ
実行に必要な最小の権限 SYSDBA CONNECT, RESOURCE
監視単位 セッション ユーザー/SQL
トレースファイル出力 あり なし
監視対象となるSQL すべて 監視対象とならない場合がある(低コストのSQL等)
表示データの揮発性 トレースファイルが存在する限り揮発しない 揮発性あり

■ 画面の説明

項目名 説明
更新 SQL一覧(上段リスト)の再読み込みを行います。
終了 画面を閉じます。
表示設定 SQL一覧の表示内容を設定します。

■選択したSQLの実行計画を表示...
チェックが入っている場合、SQL一覧で選択した SQL 文の実行計画情報を下段リストに表示します。

■自動更新...
チェックが入っている場合、[更新間隔]で設定した時間ごとにSQL一覧の再読み込みを行います。

■フィルタ...
SQL一覧をフィルタするためのダイアログを呼び出します。
ダイアログで設定可能なフィルタ条件は以下の通りです。

・SQL一覧を元にフィルタ...
SQL一覧の情報を元にフィルタを行います。

実行時間が n 秒以上のもののみ表示...
チェックが入っている場合、実行時間(ELAPSED)が n 秒以上のもののみ表示します。
0または空欄を指定した場合は無視されます。

ユーザー検索...
表示対象とするユーザーを選択します。
※SI Object Browserで接続しているユーザー以外のSQL一覧を表示するにはSELECT_CATALOG_ROLEロールが必要です。

SQLキーワード検索...
SQLに含まれるキーワードを指定します。
キーワードは部分一致でフィルタされます。
複数のキーワードでフィルタする場合は改行で区切る必要があります。

・実行計画情報を元にフィルタ...
実行計画情報を元にフィルタを行います。

COST/BYTEの多いTOP10を表示...
チェックが入っている場合、実行計画上のCOST/BYTEが多いSQLから10件分を一覧表示します。

実行計画に「TABLE ACCESS FULL」が含まれるもののみ表示...
実行計画上、TABLE ACCESS FULLが含まれるSQLのみを一覧表示します。
SQL一覧
発行された SQL文とその実行情報を一覧表示します。
各欄の値の意味は以下の通りです。

SID...
SQLを実行したセッションIDを表示します。
[同一SQLの結果をまとめる]にチェックが入っている場合、複数セッションで実行されたSQLには「*」が表示されます。

FETCHES...
SQLのフェッチ回数を表示します。

CPU...
SQLの解析・実行・フェッチに費やした CPU 時間を表示します。
単位はマイクロ秒で表示されます。

ELAPSED...
SQLの解析・実行・フェッチに費やした経過時間を表示します。
単位はマイクロ秒で表示されます。

DISK...
SQLの解析・実行・フェッチにより物理読込みが発生した際の、読込みブロック数を表示します。

実行開始日時...
SQLが実行開始された日時を表示します。

プログラム...
SQLを実行したOSプログラム名を表示します。

ユーザー...
SQLを実行したOracleユーザー名を表示します。

SQL...
SQL文を表示します。

実行結果を選択し、ポップアップメニューを表示させることで、その SQL 文に対する詳細情報が確認できます。

SQL文のコピー...
選択した SQL 文をクリップボードにコピーします。

インデックスアドバイザを開く...
インデックスアドバイザ画面を開きます。

レポート出力(HTML)...
Oracle Database提供のレポート出力機能を使用して、選択した SQL 文のレポートをHTML形式で出力します。

また、リスト左側のボタンによって、SQL一覧の情報を出力できます。

Excel出力...
SQL一覧に表示されている内容を、Microsoft Excel ファイルに出力します。

クリップボード出力...
SQL一覧に表示されている内容を、クリップボードに出力します。
実行計画
[選択したSQLの実行計画を表示]にチェックが入っている場合、選択したSQLの実行計画を表示します。

また、リスト左側のボタンによって、実行計画情報を出力できます。

Excel出力...
実行計画に表示されている内容を、Microsoft Excel ファイルに出力します。

クリップボード出力...
実行計画に表示されている内容を、クリップボードに出力します。