10gがもたらす福音(3)〜ADDM。
AutomaticDatabaseDiagnosticMonitor(ADDM)について。
ADDMは自己診断エンジンの機能のことである。
AWRスナップショットが、MMONによって作成されたときに
自動的にADDMは起動される。
起動されたADDMは最後の二つのスナップショット間を診断する。
AWRスナップショットの取得間隔=ADDM診断間隔となる。
ADDMの手動起動。
DBMS_ADVISOR.CREATE_TASK … ADDMタスクの作成
DBMS_ADVISOR.SET_TASK_PARAMETER … 開始/終了スナップショット番号の指定
DBMS_ADVISOR.EXECUTE_TASK … ADDMタスクの実行
ADDMの実行結果の取得。
DBMS_ADVISOR.GET_TASK_REPORT。CREATE_TASKしたタスクを引数に渡す。
又は
addmrptスクリプトの使用。テキストファイルを生成する。
ADDMは、DBの全体的な診断を行う。
具体的には、問題となるボトルネックを検出し、推奨事項を作成する。
さらに詳細な診断は、別のアドバイザフレームワークを使用することになる。
メモリアドバイザ
メモリアドバイザには以下の種類がある。
REDOログバッファに対するアドバイザはない。
バッファキャッシュアドバイザ
自動共有メモリー管理機能が無効の場合のみ使用できる。
バッファキャッシュに対する診断。
共有プールアドバイザ
自動共有メモリー管理機能が無効の場合のみ使用できる。
共有プールに対する診断。
SQLアクセスアドバイザ
索引の追加、マテビューの作成を提案する。
セグメントアドバイザ
領域解放できるセグメントがないかを分析する。
UNDOアドバイザ
UNDO表領域サイズの提案。
MTTRアドバイザ
平均リカバリ時間の提示。
自動共有メモリー管理について。
Oracle自身にメモリーの管理を実施させる機能。
以下のメモリを動的に調整する。
- DB_CACHE_SIZE
- SHARED_POOL_SIZE
- LARGE_POOL_SIZE
- JAVA_POOL_SIZE
この機能を有効にするには、SGA_TARGETパラメータにて
SGAの合計サイズを設定する必要がある。
SGA_MAX_SIZEを超える値は設定できない。
SGA_TARGETに0より大きい値を設定していると、MMAN(MemoryManager)が
起動する。実際にメモリの調整を行うバックグラウンドプロセスである。
動的配分の確認
V$SGA_DYNAMIC_COMPONENTS
このビューでは拡張されたか、縮小されたかも分かる。