10 データベースの監視およびチューニング
データベースのパフォーマンスを監視し、最適に実行されているかどうかを確認することは、データベース管理者にとって重要なタスクの1つです。この章では、データベースの状態の監視、パフォーマンスの問題の特定、および是正措置の実施を容易にするOracle Databaseの特長と機能について説明します。
この章のトピックは、次のとおりです:
10.1 プロアクティブなデータベースの監視
この項では、次の項目について説明します。
10.1.1 データベースの全般的な状態およびワークロードの監視
データベース・ホーム・ページでは、データベースの状態およびワークロードを監視できます。定期的に更新されるこのページはデータベースの状態に関する一般的な情報を提供します。
データベースの全般的な状態およびワークロードを監視するには、次のようにします。
10.1.2 パフォーマンス・ハブを使用したパフォーマンスの監視
パフォーマンス・ハブを使用すると、指定した期間に使用可能なすべてのパフォーマンス・データが表示されます。期間を選択すると、パフォーマンス情報がパフォーマンス・サブジェクト・エリアに基づいて収集および表示されます。
この項には次のトピックが含まれます:
リアルタイム・データを選択した場合、データ・ポイントが毎分使用可能であるため、より詳細なデータが表示されます。
履歴データを選択した場合は、異なるメトリックごとに分類されたより詳細なデータが表示されますが、データ・ポイントは自動ワークロード・リポジトリ(AWR)の間隔(通常、1時間)に平均化されます。
期間に対してリアルタイム・データまたは履歴データのいずれを選択するかによって、パフォーマンス・ハブで使用可能なタブが異なります。
次の表では、パフォーマンス・ハブのタブについて説明し、各タブが使用可能な場合(リアルタイム・データを選択した場合、履歴データを選択した場合、または両方のデータを選択した場合)を示します。
パフォーマンス・ハブのタブ名 | 説明 | 使用可能な場合 |
---|---|---|
サマリー |
「サマリー」タブには、指定した期間のシステムのパフォーマンスの包括的ビューが表示されます。 パフォーマンス・ハブ・ページに過去1時間のリアルタイム・データが表示されると、このタブには、プロセスの実行、メモリー割当て、カテゴリ別のデータベース・アクティビティおよび過去1時間のI/Oデータのサマリーが表示されます。 パフォーマンス・ハブ・ページに履歴データが表示されると、このタブには、カテゴリ別の平均アクティブ・セッションの待機、1秒当たりのプロファイルのロード、アクティブなセッション・アクティビティ、データベース・インスタンスおよび他のプロセスごとのホストCPU使用率、1秒当たりのI/Oリクエスト(読取りおよび書込みリクエスト)および選択した期間のメモリー使用量のサマリーが表示されます。 |
非CDB、CDBまたはPDBの「期間の選択」フィールドでリアルタイム・データまたは履歴データを選択した場合 |
RAC |
「RAC」タブは、EM ExpressがOracle RACデータベース(クラスタ・データベース)で使用されている場合にのみ表示されます。 リアルタイム・データを選択した場合、このタブには、グローバル・キャッシュ・アクティビティ情報、アクティビティのブレークダウン(平均アクティブ・セッション)およびインスタンスごとのリソース使用量(CPU、I/O、メモリー)が表示されます。 履歴データを選択した場合、このタブには、選択した期間のグローバル・キャッシュ・アクティビティ情報、アクティビティのブレークダウン(平均アクティブ・セッション)およびインスタンスごとのリソース使用量(CPU、I/O、メモリー)が表示されます。 |
「期間の選択」フィールドでリアルタイム・データまたは履歴データを選択した場合 |
アクティビティ |
「アクティビティ」タブには、アクティブ・セッション履歴(ASH)分析が表示されます。これにより、選択した期間におけるASHの平均アクティブ・セッションに詳細にドリルダウンできます。 このタブを使用すると、平均アクティブ・セッション・ディメンションを選択し、選択した期間のそのディメンションの上位アクティビティを表示できます。たとえば、SQL文と、選択した期間に平均アクティブ・セッションの上位アクティビティを持つユーザー・セッションを表示できます。 |
非CDB、CDBまたはPDBの「期間の選択」フィールドでリアルタイム・データまたは履歴データを選択した場合 |
ワークロード |
ワークロード・プロファイルのグラフには、過去60分間のユーザー・コール、解析コール、REDOサイズおよびSQL*Netのパターンがリアルタイム・モードで表示されます。「セッション」チャートにはログオン率、現在のログオンおよびオープン・カーソルが表示されます。SQL_IDをクリックすると、そのSQL文の詳細を含むSQLの詳細ページが表示されます。 |
非CDB、CDBまたはPDBの「期間の選択」フィールドでリアルタイム・データまたは履歴データを選択した場合 |
監視対象SQL |
このタブを使用すると、選択した期間に実行中であったか完了した監視対象のSQL文に関する情報を表示できます。 表には、監視対象のSQL文の実行に関する情報が表示されています。「ステータス」列に緑色の回転アイコンがある場合は、選択した期間に監視対象の文が完了しませんでした。赤の十字は、エラーまたはセッションが終了したことが原因でSQLが完了しなかったことを示します。「ステータス」列にチェック・マークがある場合は、選択した期間に文の実行が完了しています。 SQL文は、CPUまたはI/O時間を5秒以上消費した場合にのみ監視されます。 文のステータス、文の期間、文のタイプ(SQL、PL/SQLまたはDBOP)、文のSQL ID、文のSQL計画ハッシュ、文を発行したユーザー、文がシリアル・ステートメントとして実行されたかパラレル・ステートメントとして実行されたか、データベースが文のCPUアクティビティ、I/Oまたはその他のアクティビティの実行に費やした時間、文に関連付けられた読取りおよび書込みリクエストとバイト、文の開始時間と終了時間などの情報を表示できます。 「SQL ID」をクリックすると、そのSQL文の詳細を含むSQLの詳細ページが表示されます。 |
非CDB、CDBまたはPDBの「期間の選択」フィールドでリアルタイム・データまたは履歴データを選択した場合 |
ADDM |
「ADDM」タブを使用すると、選択した期間にデータベース内で実行されたタスクに対して、Automatic Database Diagnostics Monitor (ADDM)によって検出されたパフォーマンスの結果と推奨事項を表示できます。 ADDM機能の詳細は、「パフォーマンス自己診断: 自動データベース診断モニター」を参照してください。 |
非CDBまたはCDBの「期間の選択」フィールドでリアルタイム・データまたは履歴データを選択した場合。 このタブは、CDB管理者がCDBにログインし、PDBに移動(ドリル・ダウン)した場合にのみPDBで使用可能です。タブは、PDB管理者がPDBに直接ログインした場合には使用できません。 |
データベース時間 |
「データベース時間」タブを使用すると、様々なメトリックのカテゴリ別の待機イベントを表示したり、選択した期間の様々なメトリックの時間の統計を表示することができます。 |
非CDB、CDBまたはPDBの「期間の選択」フィールドで履歴データを選択した場合。 |
リソース |
「リソース」タブを使用すると、選択した期間のオペレーティング・システム・リソース使用状況統計、I/Oリソース使用状況統計およびメモリー使用状況統計を表示できます。 |
非CDB、CDBまたはPDBの「期間の選択」フィールドで履歴データを選択した場合。 |
システム統計 |
「システム統計」タブを使用すると、選択した期間の値ごと、1トランザクション当たりまたは1秒当たりのデータベース統計を表示できます。 |
非CDB、CDBまたはPDBの「期間の選択」フィールドで履歴データを選択した場合。 |
コンテナ |
「コンテナ」タブでは、CDB内のPDBについて、オープン時間、アクティブ・セッション、使用されたメモリー、I/Oリクエスト数、およびI/Oスループットに関する情報を確認できます。 |
CDBの「期間の選択」フィールドでリアルタイム・データまたは履歴データを選択した場合。 |
次の図は、「リアルタイム - 最近1時間」のデータが選択されている場合のパフォーマンス・ハブを示しています。
次の図は、履歴データが選択されている場合のパフォーマンス・ハブを示しています。
「パフォーマンス・ハブ」のデータを表示するには、次の手順を実行します。
10.1.2.1 統計を表示する期間の指定
「リアルタイム - 最近1時間」モードでは、「パフォーマンス・ハブ」のデータはActive Session History (ASH)を元にしています。ASHデータは、ASHバッファが満杯の場合または1時間後にディスクに書き込まれ、AWRフレームワークの一部として格納されます。
デフォルトでは、AWRの保存期間は8日です。「パフォーマンス・ハブ」に履歴データを表示する場合、表示されているのはAWRに毎時スナップショットの一部として収集された統計です。
「パフォーマンス・ハブ」の「期間の選択」フィールドを使用すると、統計が表示可能な期間を決定できます。Oracle Databaseの統計は1時間メモリーに格納されるため、「リアルタイム - 最近1時間」オプションは「期間の選択」リストに常に表示されます。
次の表に示すように、「期間の選択」リストで使用可能な履歴データのオプションは、データがAWRで使用可能な期間によって変わります。
AWRデータが使用可能な期間 | 「期間の選択」リストの履歴オプション |
---|---|
24時間未満 |
履歴 - すべて脚注1 |
24時間以上7日未満 |
履歴 - 日 履歴 - すべて脚注1 履歴 - カスタム |
7日 |
履歴 - 日 履歴 - 週 履歴 - カスタム |
8日以上脚注 2 |
履歴 - 日 履歴 - 週 履歴 - カスタム |
脚注1
このオプションは、AWRで1日未満のデータまたは1週間未満のデータが使用可能な場合にのみ使用できます。メモリーに格納されているデータベースの統計は、1時間後にAWRにフラッシュされます。
脚注 2
デフォルトのAWR保存期間は8日であるため、AWRに1週間を超えるデータを格納するには、デフォルトのAWR保存期間を変更する必要があります
「期間の選択」フィールドから履歴オプションを選択した後、日時ピッカーを使用して、「パフォーマンス・ハブ」タブにデータが表示される期間を指定します。
次の表では、「パフォーマンス・ハブ」の「期間の選択」フィールドで異なる値が選択されている場合に、日時ピッカーに表示され選択可能なデータについて説明します。
選択されている期間 | 時間ピッカー | 説明 |
---|---|---|
リアルタイム - 最近1時間 |
メモリーから過去1時間の統計を表示する |
データは日時ピッカーに5分間隔で表示されます。日時ピッカーを使用して、「パフォーマンス・ハブ」に表示する1分から60分までのデータを選択します。 |
履歴 - 日 |
AWRから1時間から24時間までの統計を表示する |
データは日時ピッカーに1時間間隔で表示されます。日時ピッカーを使用して、「パフォーマンス・ハブ」に表示する1時間から24時間までのデータを選択します。 |
履歴 - すべて |
AWR統計が存在する期間の統計を表示する |
AWRで1日未満のデータまたは1週間未満のデータが使用可能な場合にのみ表示されます。「履歴 - すべて」オプションは、「履歴 - 日」オプションまたは「履歴 - 週」オプションを提供するのに十分なAWRデータがない場合にのみ使用できます。 |
履歴 - 週 |
AWRから1日から7日までの統計を表示する |
データは日時ピッカーに1日間隔で表示されます。日時ピッカーを使用して、「パフォーマンス・ハブ」に表示する1日から7日までのデータを選択します。 「履歴 - 週」が選択されると、デフォルトで日時ピッカーに現在の週のAWRデータが表示されます。日時ピッカーで前の週のAWRデータを表示するには、日時ピッカーで<ボタンを使用します。 |
履歴 - カスタム |
「履歴 - カスタム」オプションを選択後に、「期間の選択」ダイアログ・ボックスで選択した期間のAWR統計を表示する |
日時ピッカーを使用して、「パフォーマンス・ハブ」に統計を表示する期間を選択します。 |
関連項目:
-
ASHの詳細は、『Oracle Database概要』を参照してください
-
デフォルトのAWR保存期間の変更の詳細は、『Oracle Databaseパフォーマンス・チューニング・ガイド』を参照してください
10.1.3 スタンバイ・データベースに関するパフォーマンス統計の表示について
Oracle Active Data Guard環境内のスタンバイ・データベースに関するパフォーマンス統計は、EM Expressの「パフォーマンス・ハブ」を使用して表示できます。
EM Expressを使用してOracle Active Data Guard環境内のスタンバイ・データベースを表示すると、EM Expressメニュー・バーの左上のセクションに、スタンバイ・データベースの名前、データベースのリリース番号、および文字列「standby」が表示されます。たとえば、次の図は、ADGという名前が付けられたOracle Database 12c リリース2 (12.2.0.1.0)のスタンバイ・データベースに対応するメニュー・バーを示しています。
図standby_db.pngの説明
Oracle Active Data GuardのRedo Applyメカニズムにより、プライマリ・データベースのリアルタイム・データと履歴データがスタンバイ・データベースに適用されます。ただし、スタンバイ・データベースに関する履歴パフォーマンス・データをプライマリ・データベースから「パフォーマンス・ハブ」で確認する必要性はほとんどないため、「パフォーマンス・ハブ」ではスタンバイ・データベースの履歴データを選択できません。「パフォーマンス・ハブ」の「期間の選択」ボタンは、スタンバイ・データベースには使用できません。そのため、「パフォーマンス・ハブ」では、スタンバイ・データベースについてはリアルタイム・データのみが表示可能になります。
注意:
スタンバイ・データベースに関するパフォーマンス統計を表示できるようにするには、そのためのOracle Active Data Guardオプションのライセンスが必要になります。
10.1.4 パフォーマンス自己診断: 自動データベース診断モニター
Oracle Databaseは、自動データベース診断モニター(ADDM)と呼ばれる自己診断エンジンを搭載しています。ADDMを使用すると、Oracle Databaseによってデータベース自身のパフォーマンスが診断され、特定された問題の解決方法が判断されます。
ADDMを使用した自動パフォーマンス診断を円滑化するために、Oracle Databaseではデータベースの状態およびワークロードのスナップショットが定期的に収集されます。スナップショットとは、パフォーマンスの比較のためにADDMで使用される一定期間の履歴データのセットです。スナップショットは、ある時点のシステムの状態に関する統計的サマリーを提供します。スナップショットは自動ワークロード・リポジトリ(AWR)に格納され、SYSAUX
表領域に配置されます。スナップショットは、設定した期間(デフォルトでは8日間)にわたってこのリポジトリに格納された後、新しいスナップショット用の領域を確保するためにパージされます。
ADDMは、データを分析してシステムの主な問題を判別し、解決策を提示して予想される利益を定量化します。ADDM分析結果は、検出結果のセットを表しています。
EM Expressには、2タイプのADDM結果が用意されています。
ADDM
ADDMではAWRに取得および格納されたデータの分析が行われます。ADDMでのスナップショットのデフォルトの収集間隔は1時間です。
通常、ADDMはシステム全体のシステムの問題を特定するために使用します。次のようなパフォーマンスの問題に注意を促します。
-
SQL文を頻繁にロードしたためにデータベースによってCPU時間またはメモリーが多く使用された場合などに起こるリソース競合(ボトルネック)
-
アプリケーションによってデータベースに長時間ログインした場合などに起こる接続管理の低下
-
あるユーザー・プロセスが表内のデータを安全に更新するためにロックを取得しており、同じ表に対するロックを取得する必要がある他のユーザー・プロセスが待機状態になることで、データベースのパフォーマンスが低下する場合などに起こるマルチユーザー環境でのロック競合
リアルタイムADDM
リアルタイムADDMは、リアルタイムで自動的にデータベースを監視します。
リアルタイムADDMでは、次のような多大な影響を与える一時的な問題がアプリケーション・パフォーマンスを脅かす前に、それらを事前に検出して診断します。
-
高CPU
-
I/Oのスパイク
-
メモリー
-
インターコネクトの問題
-
ハングおよびデッドロック
リアルタイムADDMは発生する可能性のあるパフォーマンスの問題を検出すると、データの収集をトリガーします。データはレポート・リポジトリ(AWRの一部)に保存されます。リアルタイムADDMレポートをEM Expressから表示すると、分析が実行され、結果と推奨事項が作成されます。リアルタイムADDMレポートはAWRに格納されるため、一定期間の問題の繰返しの識別に役立ちます。
表10-1は、EM Expressで使用可能なADDMの機能をまとめたものです。
表10-1 EM ExpressでのADDMの機能
主な内容 | 新規 | 説明 | 分析期間 | 分析結果を表示する方法 |
---|---|---|---|---|
ADDM |
いいえ |
これは前のデータベース・リリースに存在していた従来のADDMです。「ADDMタスク」は、「パフォーマンス・ハブ」の「ADDM」タブに表示されます。 |
デフォルトのAWR間隔は1時間 |
「ADDM」タブの「ADDMタスク」表で、「タスク名」をクリックします。 |
リアルタイムADDM |
あり |
多大な影響を与える一時的な問題をリアルタイムで事前に検出して診断します。「リアルタイムADDMレポート」は、「パフォーマンス・ハブ」の「ADDM」タブに表示されます。 |
リアルタイム |
「ADDM」タブの「リアルタイムADDMレポート」表で、レポートを選択し「パフォーマンス・レポートの表示」をクリックします。 |
関連項目:
-
自動データベース診断モニターの詳細は、Oracle Database 2日でパフォーマンス・チューニング・ガイドを参照
10.2 ADDMを使用したパフォーマンスの問題の診断
データベースのパフォーマンスの問題が発生した場合は、診断および収集が必要です。通常、これらの問題は、異なる期間のデータを分析するADDMによって注意が促されます。
この項では、次の項目について説明します。
10.2.1 ADDMパフォーマンス結果のサマリーの確認
ADDMの分析結果は、各結果の説明と推奨アクションで構成されます。結果と結果がシステムに与える影響のサマリーを確認できます。
ADDMパフォーマンス結果のサマリーを確認するには、次のようにします。
10.2.3 リアルタイムADDM結果のサマリーの確認
リアルタイムADDM結果は、リアルタイムADDMレポートが生成された時点の各結果の説明と一部の結果に対する推奨アクションで構成されます。結果と結果がシステムに与える影響のサマリーを確認できます。
リアルタイムADDMパフォーマンス結果のサマリーを確認するには、次のようにします。
関連項目:
10.3 アドバイザを使用したデータベース・パフォーマンスの最適化
10.3.1 アドバイザについて
データベースのパフォーマンス改善に役立つアドバイザが用意されています。これには、自動データベース診断モニター(ADDM)、SQLアドバイザ、メモリー・アドバイザなどがあります。たとえば、SGAアドバイザは、システム・グローバル領域(SGA)のサイズ変更がパフォーマンスに与える影響をグラフィカルに示します。
パフォーマンス・アドバイザは次のような状況で実行します。
-
特定の領域内での問題を解決する場合。たとえば、なぜ特定のSQL文がCPU時間の50パーセントを消費しているのかを判別する場合や、リソースの消費を削減するにはどうしたらよいかといった場合に、SQLチューニング・アドバイザを使用できます。
-
システムにメモリーを追加する場合。メモリー・アドバイザを使用して、SGAまたはPGA(プログラム・グローバル領域)の増加によるデータベース・パフォーマンスの影響を判別できます。
一部のアドバイザは、パフォーマンス・ハブ・ページまたはADDMの推奨事項からも起動できます。
表10-2では、パフォーマンス・アドバイザについて説明します。
表10-2 パフォーマンス・アドバイザ
アドバイザ | 説明 |
---|---|
自動データベース診断モニター(ADDM) |
ADDMを使用すると、Oracle Databaseによってデータベース自身のパフォーマンスが診断され、特定された問題の解決方法が判断されます。「パフォーマンス自己診断: 自動データベース診断モニター」と「ADDMを使用したパフォーマンスの問題の診断」を参照してください。 |
SQLチューニング・アドバイザ |
SQLチューニング・アドバイザは、1つ以上のSQL文を分析してパフォーマンス改善のための推奨事項を提示します。このアドバイザはメンテナンス期間中に自動的に実行されますが、手動での実行も可能です。「自動SQLチューニング・アドバイザについて」および「SQLチューニング・アドバイザの実行」を参照してください。 データベースのメンテナンス・ウィンドウ(期間)の詳細は、『Oracle Databaseリファレンス』を参照してください。 |
メモリー・アドバイザ
|
メモリー・アドバイザは、合計メモリーのターゲット設定、SGAおよびPGAターゲット設定、またはSGAコンポーネントのサイズ設定の分析結果をグラフィカルに表示します。この分析結果は、データベース・パフォーマンスのチューニングやwhat-if計画に使用できます。現在のメモリー管理モードに応じて、様々なメモリー・アドバイザが使用可能です。
メモリー・アドバイザの詳細は、「メモリー・アドバイザによるメモリー使用率の最適化」を、メモリー管理モードの詳細は、「メモリーの管理」を参照してください。 |
UNDOアドバイザ |
UNDOアドバイザは、UNDO表領域のサイズを正確に設定するのに役立ちます。また、任意のOracle Flashback要件に応じてUNDO保存期間のしきい値に小さな値を設定するときにも使用できます。「UNDOアドバイザを使用したUNDO表領域の最小サイズの計算」を参照してください。 |
オプティマイザ統計アドバイザ |
オプティマイザ統計アドバイザは、統計および統計関連タスクの品質を分析する組込みの診断ソフトウェアです。アドバイザ・タスクがメンテナンス・ウィンドウで自動的に実行されますが、必要に応じて実行することもできます。次に、アドバイザ・レポートを表示できます。アドバイザが推奨事項を生成すると、システム生成スクリプトを実行して実装できる場合があります。 オプティマイザ統計アドバイザの使用方法の詳細は、『Oracle Database SQLチューニング・ガイド』を参照してください |
10.3.2 SQLチューニング・アドバイザについて
SQLチューニング・アドバイザを使用して、単一または複数のSQL文をチューニングできます。通常は、SQLチューニング・アドバイザの使用を推奨するADDMパフォーマンス結果を受けて実行します。リソース使用量が最も多いSQL文やSQLワークロードに対して定期的に実行することも可能です。
複数のSQL文をチューニングする場合、SQLチューニング・アドバイザはSQL文間の相互依存性を認識しません。SQLチューニング・アドバイザは、最適化の計画の問題点や特定のSQL構造体の誤った使用など、SQL文ごとに個別に問題を特定して、SQLパフォーマンスの問題を解決します。
SQLチューニング・アドバイザは次のソースに対して実行できます。
-
アクティビティ: 「パフォーマンス・ハブ」の「アクティビティ」タブに表示される、過去1時間に実行された、最もリソース集中型であるSQL文(最近のパフォーマンスの問題の原因となる可能性がある)。
-
履歴SQL: 「期間の選択」フィールドで履歴設定のいずれかが選択されている場合に、「パフォーマンス・ハブ」の「アクティビティ」タブに表示される、過去1日間、過去1週間または過去1か月のSQL文。このオプションは、SQL文のプロアクティブなチューニングに使用します。
-
ADDMの履歴SQL: 「パフォーマンス・ハブ」の「ADDM」タブのタスクを分析する際に検出される、ADDMタスクのリソース集中型であるSQL文。
-
SQLチューニング・アドバイザのSQL文: SQLチューニング・アドバイザのチューニング・タスクとして表示される、リソース集中型であるSQL文。
-
SQLチューニング・セット(STS): 指定した一連のSQL文。STSはAWRスナップショットによって取得されたSQL文またはSQLワークロードから作成されます。
注意:
EM Expressを使用してSTSを作成することはできません。STSの作成の詳細は、『Oracle Database SQLチューニング・ガイド』を参照してください。
関連項目:
-
SQLチューニング・アドバイザを使用したSQL文のチューニングの詳細は、『Oracle Database 2日でパフォーマンス・チューニング・ガイド』を参照してください
10.3.3 自動SQLチューニング・アドバイザについて
自動SQLチューニング・アドバイザは、SQLプロファイルの推奨事項を自動的に実装するように構成できます。SQLプロファイルには、そのSQL文に特化した追加SQL統計が含まれ、問合せオプティマイザが実行時に効率的な実行計画を生成できるようにします。自動実装を有効にすると、アドバイザは、パフォーマンスが少なくとも3倍は向上するとみられるSQL文にのみSQLプロファイルを作成します。新しい索引の作成、オプティマイザ統計のリフレッシュ、SQLの再構築など、その他の推奨事項は、手動で実装する必要があります。DML文は、自動SQLチューニング・アドバイザによるチューニングとはみなされません。
自動SQLチューニングの結果のサマリーを表示でき、SQLチューニング・アドバイザで処理済のすべてのSQL文のために作成された推奨事項に関する詳細なレポートも表示できます。選択した推奨事項を実装することができます。また、自動的に実装された推奨事項も参照できます。
自動SQLチューニング・アドバイザは、必要に応じて無効にすることができます。
関連項目:
-
自動化されたメンテナンス・タスクに関する詳細は、Oracle Database管理者ガイドを参照
10.3.4 自動SQLチューニング・アドバイザの構成
自動SQLチューニング・アドバイザに対して実行する構成タスクは次のとおりです。
-
SQLプロファイルの推奨の自動実装を有効にします。
自動実装はデフォルトでは無効になっています。
-
SQLチューニング・アドバイザの1回実行時に実装されるSQLプロファイルの最大数を変更します。
SQLプロファイルの推奨の自動実装が有効になっている場合は、デフォルトで、SQLチューニング・アドバイザの1回実行時に20個のSQLプロファイルが実装されます。
-
全体で実装可能なSQLプロファイルの最大数を変更します。
SQLプロファイルの推奨の自動実装が有効になっている場合は、デフォルトで、合計10000個のSQLプロファイルをSQLチューニング・アドバイザで実装できます。
自動SQLチューニング・アドバイザを構成するには、次の手順を実行します。
関連項目:
SQLプロファイルの詳細は、「自動SQLチューニング・アドバイザについて」を参照してください
10.3.6 SQLチューニング・アドバイザの実行
「SQLチューニング・アドバイザについて」で説明されているように、SQLチューニング・アドバイザはチューニング対象のSQL文をいくつかのソースから選択できます。次の例では、アクティビティが最も多いSQL文をチューニングすると想定しています。
SQLチューニング・アドバイザを実行するには、次の手順を実行します。
関連項目:
10.3.7 スタンバイ・データベースのSQL文のチューニングについて
Oracle Active Data Guard環境では、プライマリ・データベースで読取り/書込みの問合せを実行できますが、読取り専用のSQL問合せはスタンバイ・データベースで実行されます。EM Expressの「SQLチューニング・アドバイザ」を使用すると、スタンバイ・データベースのコストが高い読取り専用SQL問合せをチューニングできます。
「SQLチューニング・アドバイザ」を使用してOracle Active Data Guardのワークロードをチューニングすると、スタンバイ・データベースの読取り専用の性質は維持されながら、SQLチューニング・プロセス全体がスタンバイでローカルに実行されます。これは、スタンバイからプライマリへのデータベース・リンクを使用して、あらゆるデータベース状態の変更(SQLプロファイル実装など)をプライマリに書き込むことで実現されます。プライマリに実装されている推奨事項は、Oracle Data GuardのREDO Applyによってスタンバイに適用されます。
注意:
スタンバイ・データベースのSQL文をチューニングできるようにするには、そのためのOracle Active Data Guardオプションのライセンスが必要になります。
関連項目:
-
スタンバイ・データベースからプライマリ・データベースへのデータベース・リンクの作成例を含む、リモート・データベースのSQLチューニングの概要は、『Oracle Database SQLチューニング・ガイド』を参照してください
10.3.7.1 スタンバイ・データベースのSQL文のチューニング
EM Expressの「SQLチューニング・アドバイザ」を使用すると、Oracle Active Data Guard環境内のスタンバイ・データベースのSQL文をチューニングできます。
注意:
スタンバイ・データベースのSQL文をチューニングできるようにするには、そのためのOracle Active Data Guardオプションのライセンスが必要になります。
このトピックは、「SQLチューニング・アドバイザの実行」のトピックで紹介した「SQLチューニング・アドバイザ」について熟知していることを前提としています。
「SQLチューニング・アドバイザ」を使用して、Oracle Active Data Guard環境内のスタンバイ・データベースのSQL文をチューニングするには:
10.3.8 メモリー・アドバイザを使用したメモリー使用量の最適化
10.3.8.1 メモリー・アドバイザについて
ADDMは、データベースのパフォーマンスを定期的に評価して、パフォーマンスの問題を特定します。現在の使用可能なメモリー容量が十分ではなく、パフォーマンスに悪影響を与えていることが判明した場合、ADDMはメモリー割当て量を増やすように推奨します。新しいメモリー割当て量はメモリー・アドバイザを使用して選択できます。
また、メモリー・アドバイザを使用して、次のことに関するwhat-if分析を実行できます。
-
データベースへ物理メモリーを追加するデータベース・パフォーマンスの利点
-
データベースで使用可能な物理メモリーの削減のデータベース・パフォーマンスの影響
メモリー・アドバイザを使用すると、メモリーのサイズ設定に関するアドバイスを次のように取得できます。
-
自動メモリー管理が有効になっている場合は、Oracleインスンスに異なるターゲット・メモリー・サイズの設定を使用することによって、節約される時間の割合の予測を取得できます。
詳細は、「メモリー設定の変更: 自動メモリー管理」を参照してください。
-
自動メモリー管理が無効、自動共有メモリー管理が有効になっている場合は、異なる合計SGAサイズを使用することによって、節約される時間の割合の予測を取得できます。
詳細は、「メモリー設定の変更: 自動共有メモリー管理」を参照してください。
-
手動共有メモリー管理のみが有効になっている場合は、異なるデータベース・キャッシュ・サイズを使用することによって、節約される読取りの割合の予測を取得できます。
詳細は、「メモリー設定の変更: 手動共有メモリー管理」を参照してください。
10.4 データベースの監視およびチューニング: Oracle by Example Series
Oracle by Example(OBE)には、『Oracle Database 2日でデータベース管理者』に関するシリーズが含まれています。このOBEでは、この項のタスクを段階的に説明し、注釈付きのスクリーンショットを使用します。
データベースの監視およびチューニングに関するOBEを参照するには、ご使用のWebブラウザで次のURLを入力します。
https://apexapps.oracle.com/pls/apex/f?p=44785:24:::NO:24:P24_CONTENT_ID:16833