135 DBMS_PERF
DBMS_PERFパッケージでは、データベース・パフォーマンスを監視するためのアクティブ・レポートを生成するインタフェースを提供します。
参照:
PL/SQLでのSQLインジェクションの回避の詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。
この章のトピックは、次のとおりです:
135.1 DBMS_PERFの概要
DBMS_PERFパッケージでは、データベース・パフォーマンス・レポートを生成するためのインタフェースを提供します。すべてのサブプログラムはアクティブ・レポートを戻します。これらのレポートは、システム・レベル、セッション・レベルまたはSQLレベルで生成できます。
135.3 DBMS_PERFサブプログラムの要約
この表は、DBMS_PERF
サブプログラムを示し、簡単に説明しています。
表135-1 DBMS_PERFパッケージのサブプログラム
サブプログラム | 説明 |
---|---|
指定した期間のデータベース・システム全体のコンポジット・アクティブ・パフォーマンス・レポートを生成します。 |
|
セッションが |
|
|
135.3.1 REPORT_PERFHUBファンクション
このファンクションは、指定した期間のデータベース・システム全体のコンポジット・アクティブ・パフォーマンス・レポートを生成します。
構文
DBMS_PERF.REPORT_PERFHUB ( is_realtime IN NUMBER DEFAULT NULL, outer_start_time IN DATE DEFAULT NULL, outer_end_time IN DATE DEFAULT NULL, selected_start_time IN DATE DEFAULT NULL, selected_end_time IN DATE DEFAULT NULL, inst_id IN NUMBER DEFAULT NULL, dbid IN NUMBER DEFAULT NULL, monitor_list_detail IN NUMBER DEFAULT NULL, workload_sql_detail IN NUMBER DEFAULT NULL, addm_task_detail IN NUMBER DEFAULT NULL, report_reference IN VARCHAR2 DEFAULT NULL, report_level IN VARCHAR2 DEFAULT NULL, type IN VARCHAR2 DEFAULT 'ACTIVE', base_path IN VARCHAR2 DEFAULT NULL); RETURN CLOB;
パラメータ
表135-2 REPORT_PERFHUBファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
1の場合、リアルタイム・モードです。 |
|
時間セレクタで示した範囲外の期間の開始時間。
|
|
時間セレクタで示した範囲外の期間の終了時間。
|
|
選択した開始時間。
|
|
選択した終了時間。
|
|
データを取得するためのインスタンスID。
|
|
問合せ対象の
|
|
SQL監視リストの上位N個のSQ監視詳細を取得します。
|
|
ワークロードSQLリストの上位N個の監視詳細を取得します。
|
|
最新のADDMタスクの最大N個のタスクを取得します。
|
|
SQL*Plusから使用する場合、 |
|
|
|
レポート・タイプ。
|
|
フレックスHTMLでは外部ファイルにアクセスする要があるため、HTMLリソースのURLパスを指定します。これはtype=' |
使用上のノート
-
期間を選択すると、パフォーマンス情報がパフォーマンス・サブジェクト・エリアに基づいて収集および表示されます。
-
期間は、リアルタイムまたは履歴のいずれかです。
-
リアルタイム・データを選択した場合、データ・ポイントが毎分使用可能であるため、より詳細なデータが表示されます。
-
履歴データを選択した場合は、異なるメトリックごとに分類されたより詳細なデータが表示されますが、データ・ポイントは自動ワークロード・リポジトリ(AWR)の間隔(通常、1時間)に平均化されます。
-
is_real-timeが1(リアルタイム・モード)または0(履歴モード)のどちらであるかによって、パフォーマンス・ハブで使用可能なタブが異なります。
135.3.2 REPORT_SESSIONファンクション
このファンクションは、セッションがinst_id
、sid
およびserial_num
で識別される特定のデータベース・セッションのパフォーマンス・レポートを作成します。
これらのパラメータのいずれかが欠落している場合、現在のセッションのレポートが作成されます。
セッション・レベルのパフォーマンス・レポートには、次のタブが含まれています。
-
サマリー - このタブには、キー識別子、セッションの属性およびアクティビティ・データのサマリーが含まれています。また、リアルタイムSQL監視によって監視されたセッションで実行されたSQL、PLSQLブロックおよびデータベース操作(DBOP)のリストが含まれています。
-
アクティビティ - このタブでは、このセッションの待機クラスによって分類されるアクティビティが示されます。このチャートで使用されるデータはアクティブ・セッション履歴(ASH)から取得されます。
-
メトリック - このタブでは、長期間にわたる、選択したセッションの特定のキー・メトリックのチャートが示され、履歴モードでのみ使用可能です。示されるメトリックとして、CPU使用率、PGA使用率、IOスループットおよびIOリクエストがあります。
構文
DBMS_PERF.REPORT_SESSION ( inst_id IN NUMBER DEFAULT NULL, sid IN NUMBER DEFAULT NULL, serial IN NUMBER DEFAULT NULL, is_realtime IN NUMBER DEFAULT NULL, outer_start_time IN DATE DEFAULT NULL, outer_end_time IN DATE DEFAULT NULL, selected_start_time IN DATE DEFAULT NULL, selected_end_time IN DATE DEFAULT NULL, dbid IN NUMBER DEFAULT NULL, monitor_list_detail IN NUMBER DEFAULT NULL, report_reference IN VARCHAR2 DEFAULT NULL, report_level IN VARCHAR2 DEFAULT NULL, type IN VARCHAR2 DEFAULT 'ACTIVE', base_path IN VARCHAR2 DEFAULT NULL) RETURN CLOB;
パラメータ
表135-3 REPORT_SESSIONファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
データを取得するためのインスタンスID。 |
|
パフォーマンスを取得するためのセッションID。 |
|
セッションのシリアル番号。 |
|
1の場合、リアルタイム・モードです。 |
|
時間セレクタで示した範囲外の期間の開始時間。
|
|
時間セレクタで示した範囲外の期間の終了時間。
|
|
選択した開始時間。
|
|
選択した終了時間。
|
|
問合せ対象の
|
|
SQL監視リストの上位N個のSQ監視詳細を取得します。
|
|
SQL*Plusから使用する場合、 |
|
|
|
レポート・タイプ。
|
|
フレックスHTMLでは外部ファイルにアクセスする要があるため、HTMLリソースのURLパスを指定します。 |
135.3.3 REPORT_SQLファンクション
このファンクションでは、sql_id
で識別される特定のSQL文のアクティブ・パフォーマンス・レポートを生成します。
SQLレベルのパフォーマンス・レポートには、次のタブが含まれています。
-
サマリー - このタブには、SQLテキスト、ユーザー名、これを実行しているセッションおよび関連情報などのキー属性を持つSQL文の概要が含まれています。また、これには「計画」タブも含まれ、メモリーやAWRにあるSQL文の個別の計画ごとに統計情報およびアクティビティが表示されます。
-
アクティビティ - このタブでは、このSQL文の待機クラスによって分類されるアクティビティが表示されます。このチャートで使用されるデータはアクティブ・セッション履歴(ASH)から取得されます。
-
実行統計 - このタブには、この文の個別の計画ごとの統計情報とアクティビティ、およびその計画がグラフィカルな表形式で表示されます。
-
監視対象SQL - リアルタイムSQL監視によって監視されたSQL文のすべての実行がこのタブにリストされます。
-
計画管理 - このタブには、SQL文に対するSQLプロファイルおよびSQL計画ベースラインが存在する場合、これらに関する情報が表示されます。
-
統計の履歴 - このタブは履歴モードでのみ使用可能です。これには、異なる実行計画について、長期間にわたって作成された、実行数、I/O回数、処理済の行やその他の情報などの統計情報が含まれています。この情報はAWRから取得されます。
構文
DBMS_PERF.REPORT_SQL ( sql_id IN varchar2 default null, is_realtime IN number default null, outer_start_time IN date default null, outer_end_time IN date default null, selected_start_time IN date default null, selected_end_time IN date default null, inst_id IN number default null, dbid IN number default null, monitor_list_detail IN number default null, report_reference IN varchar2 default null, report_level IN varchar2 default null, type IN varchar2 default 'ACTIVE', base_path IN varchar2 default null); RETURN CLOB;
パラメータ
表135-4 REPORT_SQLファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
パフォーマンスを取得するための |
|
1の場合、リアルタイム・モードです。 |
|
時間セレクタで示した範囲外の期間の開始時間。
|
|
時間セレクタで示した範囲外の期間の終了時間。
|
|
選択した開始時間。
|
|
選択した終了時間。
|
|
データを取得するためのインスタンスID。 |
|
問合せ対象の
|
|
SQL監視リストの上位N個のSQ監視詳細を取得します。
|
|
SQL*Plusから使用する場合、 |
|
|
|
レポート・タイプ。
|
|
フレックスHTMLでは外部ファイルにアクセスする要があるため、HTMLリソースのURLパスを指定します。 |