SQLチューニング・セットの管理
SQLチューニング・セットを管理し、データベース管理でSQLチューニング・セットの作成やSQL文のSQLチューニング・セットへのロードなどのタスクを実行できます。
SQLチューニング・セットは、SQLパフォーマンスのモニタリングおよびチューニングを目的として、SQLワークロード・データの収集、管理およびアクセスのメカニズムとして機能するデータベース・オブジェクトです。これにより、SQL文および関連するメタデータを、SQLチューニング・アドバイザなどのチューニング・ツールへの入力として使用できる単一のデータベース・オブジェクトにグループ化できます。SQLチューニング・セットには次のものが含まれます。
- SQL文のセット
- ユーザー・スキーマ、アプリケーション・モジュール名とアクション、バインド値のリスト、カーソル・コンパイル環境など、関連する実行コンテキスト。
- 経過時間、CPU時間、バッファ読取り、ディスク読取り、処理された行、カーソル・フェッチ、実行数、完了した実行数、オプティマイザ・コスト、コマンド・タイプなど、関連する基本実行統計
- 各SQL文に関連する実行計画および行ソースの統計(オプション)
データベース管理でSQLチューニング・セットを管理するには、「管理対象データベースの詳細」ページに移動し、左側のペインの「リソース」の下にある「SQLチューニング・セット」をクリックします。管理対象データベースの既存のSQLチューニング・セットのリストが、SQLチューニング・セットの名前、ステータス、所有者、SQLチューニング・セット内の文の数などの情報とともに表示されます。
次のSQLチューニング・セット関連のタスクを実行できます。
- 新しいSQLチューニング・セットを作成し、複数のソースからSQL文をロードします。
- SQL文を既存のSQLチューニング・セットにロードします。
- SQLチューニング・セットの詳細をモニターします。
- SQL文をSQLチューニング・セットから別の新規または既存のSQLチューニング・セットに保存します。
- SQLチューニング・セット内の1つ以上の文を削除します。
また、SQLチューニング・セットの作成時またはSQLチューニング・セットの詳細の監視時に、SQL文をフィルタするSQL述部を指定できます。SQL述語は、SQLSET_ROW
の属性に基づいています。詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』のSQLSET_ROWオブジェクト・タイプに関する項を参照してください。
SQLチューニング・セットの管理に必要な権限
次のいずれかの権限が必要です。
ADMINISTER SQL TUNING SET
: 所有するSQLチューニング・セットを管理できます。ADMINISTER ANY SQL TUNING SET
: 任意のSQLチューニング・セットを管理できます。
SQLチューニング・セットの作成 🔗
管理対象データベースの新しいSQLチューニング・セットを作成し、複数のソースからSQL文をロードできます。
SQLチューニング・セットを作成したら、SQLチューニング・セットを選択して次のタスクを実行できます。
- 「SQLのロード」をクリックして、SQL文をSQLチューニング・セットにロードします。SQLチューニング・セットへのSQL文のロードに関連するロード・メソッドおよびステップは、SQLチューニング・セット作成プロシージャの詳細と同じです。
- 「アクション」アイコン(
)をクリックし、「削除」をクリックしてSQLチューニング・セットを削除します。
SQLチューニング・セットの詳細の監視 🔗
SQLチューニング・セットの詳細およびSQL文は、SQLチューニング・セットで監視できます。
「管理対象データベースの詳細」ページの「SQLチューニング・セット」セクションで、SQLチューニング・セットの名前をクリックして「SQLチューニング・セットの詳細」ページに移動します。「SQLチューニング・セットの詳細」ページには、その所有者やSQLチューニング・セット内のSQL文の合計数などのSQLチューニング・セット情報が表示されます。「削除」をクリックして、SQLチューニング・セットを削除します。
「SQLチューニング・セットの詳細」ページの「SQL文」セクションでは、SQLチューニング・セットで最大2000のSQL文を表示して、次のタスクを実行できます:
- 各SQL文の詳細(SQL ID、SQLテキスト、計画ハッシュ値など)をモニターします。
- 「フィルタの表示」をクリックし、次のオプションを使用してSQLチューニング・セット内のSQL文のリストをフィルタします:
- フィルタ問合せ: SQL文をフィルタするSQL述語を入力します。SQL述語は、
SQLSET_ROW
の属性に基づいています。詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』のSQLSET_ROWオブジェクト・タイプに関する項を参照してください。 - 結果のソート基準: SQL文をソートするメトリックを3つまで選択します。
- 結果パーセンテージ(%): 一致結果のパーセンテージを示す数値を入力します。フィルタ問合せの結果には、一致するすべてのSQL文の中でソートが最も高いSQL文の指定した割合が含まれます。ソートは、「結果のソート基準」ドロップダウン・リストで指定されたメトリックに基づいており、このオプションを使用するには少なくとも1つのメトリックを選択する必要があります。
- 結果制限: 一致結果の強い制限を示す数値を入力します。フィルタ問合せの結果は、指定した数のSQL文に制限されます。「結果のソート基準」ドロップダウン・リストでメトリックが選択されている場合、上位SQL文を選択する前に結果のソートが適用されます。値
0
は、一致するすべてのSQL文を結果に含める必要があることを示します。 - 再帰的SQL: 検索結果に再帰的SQL文を含める場合に選択します。
- フィルタ問合せ: SQL文をフィルタするSQL述語を入力します。SQL述語は、
- 「SQLのロード」をクリックして、SQL文をSQLチューニング・セットにロードします。SQL文の収集およびSQLチューニング・セットへのロードに使用できるロード・メソッドの詳細は、「SQLチューニング・セットの作成」を参照してください。
- 「名前を付けて保存」をクリックして、新規または既存のSQLチューニング・セットにSQL文を保存します。SQLチューニング・セット内のすべてのSQL文、または定義済のフィルタリング基準に一致するSQL文のみを保存できます。
「SQLチューニング・セットの保存」パネルで:
- SQL文を保存するSQLチューニング・セットの詳細を指定します。
- 既存のSQLチューニング・セットにSQL文を保存するには:
- 保存方法: 「既存のSQLチューニング・セットへ」を選択します。
- 名前: SQL文を保存するSQLチューニング・セットを選択します。
- 拡張オプションの表示: SQL文を選択して別のSQLチューニング・セットに保存する詳細を指定します。この項に表示されるオプションの詳細は、「SQLチューニング・セットの作成」を参照してください。
- SQL文を新しいSQLチューニング・セットに保存するには:
- 保存方法: 「新規SQLチューニング・セットへ」を選択します。
- 名前: SQLチューニング・セットの名前を入力します。
- 説明: オプションで、SQLチューニング・セットの説明を入力します。
- 既存のSQLチューニング・セットにSQL文を保存するには:
- 「資格証明」セクションの「資格証明タイプ」ドロップダウン・リストで使用可能なオプションの1つを選択して、管理対象データベースに接続するデータベース資格証明を指定します。資格証明タイプの詳細は、資格証明を使用した診断および管理タスクの実行を参照してください。
- 「保存」をクリックします
- SQL文を保存するSQLチューニング・セットの詳細を指定します。
- 「SQLの削除」をクリックして、すべてのSQL文またはフィルタリング基準に一致するSQL文をSQLチューニング・セットから削除します。