このチュートリアルでは、Oracle Real Application Clusters(Oracle RAC)環境において、Automatic Database Diagnostic Monitor(ADDM)を使用してデータベース・レベルにおける問題を特定する方法、および影響を受けるデータベース・インスタンスへドリルダウンする方法を説明します。
約40分
このチュートリアルでは、以下のトピックについて説明します。
| 概要 | |
| 前提条件 | |
| Oracle RACでのADDMの使用 | |
| まとめ |
このアイコンの上にカーソルを置くと、すべてのスクリーンショットがロードし、表示されます。
(警告: この操作によって、同時にすべてのスクリーンショットがロードされるため、ご使用のインターネット接続によってはレスポンス時間が遅くなる場合があります。)
注: 各手順に関連したスクリーンショットのみを表示する場合は、それぞれの手順にあるアイコンの上にカーソルを置いてください。 スクリーンショットをクリックすると、非表示になります。
Oracle Database 11gでは、クラスタワイドのパフォーマンス分析でデータベースの管理性を高める拡張機能を提供しています。 ADDMの特別モードは、Oracle RACのデータベース・クラスタを分析し、クラスタ全体に影響を及ぼしている問題だけでなく、個々のインスタンスに影響を及ぼしている問題もレポートします。 このモードは、Oracle Database 10gですでに使用されているインスタンス分析モードに対して、データベース分析モードと呼ばれます。 Oracle RACのデータベース分析は、問題のレポートだけではなく、Oracle RACに最適な独立分析もおこないます。
このチュートリアルを始める前に以下を確認してください。
| 1. |
Oracle Clusterware 11g、Oracle Database 11gをインストールし、2ノードのRACデータベースを作成していること。 |
|
| 2. |
作業ディレクトリ(wkdir)へrac_addm.zipファイルをダウンロードおよび解凍し、作業ディレクトリに移動していること。 |
|
ADDMによるデータベース分析は、すべてのインスタンスから生成されたAWRデータへアクセスできるため、グローバルなリソースの分析をより正確におこなうことが可能です。 データベース分析とインスタンス分析の両方とも、インスタンスの起動および停止を含めた連続した期間で実行します。 データベース分析の場合は、分析期間中に停止または起動されるインスタンスがいくつかあります。 ただし、期間中のデータベースのバージョンは統一する必要があります。 データベース分析は、スナップショットが作成されると自動的に実行します。 インスタンス分析の自動実行は、Oracle Database 10gの場合と同様です。 クラスタ内のインスタンスのサブセットでも分析を実行できます。 これは、ADDMによる部分分析と呼ばれます。 以下のシナリオは、Oracle RAC環境におけるADDMのドリルダウン機能を説明しています。
以下の手順を実行して、Oracle RACでのADDMの使用方法について学習します。
| 1. |
ブラウザを開き、User NameをSYSとしてOracle Enterprise Managerにログオンします。 Cluster Database Homeページで「Performance」タブをクリックします。
|
|
| 2. |
Oracleユーザーとして端末ウィンドウを開き、addm_rac_setup.shスクリプトを実行します。 このスクリプトは、このチュートリアル中に使用されるユーザー、表領域、および表を作成します。 ./addm_rac_setup.sh
|
|
| 3. |
同じ端末セッションからrun_workload.shスクリプトを実行します。 このスクリプトは、先に作成した表に行挿入を開始します。 このスクリプトの実行が終了するまで待機します。 2回目の"PL/SQL procedure successfully completed"メッセージを確認したら、「return」を押します。 ./run_workload.sh
|
|
| 4. |
使用しているEnterprise Managerセッションに戻り、Average Active Sessionsグラフを確認します。 ConcurrencyおよびCluster待機クラスの率が高いことがわかります。
| |
| 5. |
ワークロードの実行が完了したら、create_snapshot.shスクリプトを実行します。 このスクリプトは、ADDM分析を自動実行するため、新たにAWRスナップショットの作成を実行します。 ./create_snapshot.sh
|
|
| 6. |
使用しているEnterprise Managerセッションに戻り、「Home」タブをクリックして、Cluster Database Homeページに戻ります。
|
|
| 7. |
Diagnostic SummaryセクションにADDM Findingsリンクが表示されるまで、Homeページで数分待機します。 表示されたら、ADDM Findingsフィールドにある数字をクリックします。
|
|
| 8. |
Automatic Database Diagnostic Monitorページが表示されたら、レポート分析の1番上にある「Top SQL by DB Time」リンクをクリックします。 この結果はグローバルな分析結果です。
Top SQL by DB Timeページで、「Show All Details」リンクをクリックします。
両インスタンスから使用される共通のシーケンス・オブジェクトを使用したINSERT文が確認できます。
確認後、このページの上部にある「ADDM」ブレッドクラム・リンクをクリックします。
|
|
| 9. |
Automatic Database Diagnostic Monitorページに戻り、レポート分析の上部にある「Sequence Usage」リンクをクリックします。 この検証結果で両インスタンスが影響を受けていることが示されています。 ADDMによって、ホット・シーケンスの調査のために上位SQL文が提供されます。 完了後、ページの上部にある「ADDM」ブレッドクラム・リンクをクリックします。 このような情報は、先に確認したシーケンスに問題がある可能性を示唆しています。
|
|
| 10. |
Affected Instancesの表にある「racdb_racdb1」リンクをクリックして、最初のインスタンスをドリルダウンします。
Finding列の「Top SQL by DB Time」リンクをクリックします。
Recommendationsセクションの「Show All Details」リンクをクリックします。
インスタンス・レベルで確認できるグローバル情報と、前に確認したグローバル情報を確認します。
確認後、「ADDM」ブレッドクラム・リンクをクリックして、ADDMレポートのトップ・レベルに戻ります。
|
|
| 11. |
「Database」タブ、続けて「Performance」タブをクリックして、Performanceページに戻ります。
|
|
| 12. |
端末セッションに戻り、addm_rac_fix.shスクリプトを実行します。 このスクリプトは、より大きなCACHE値を使用して原因となるシーケンスを再作成します。
|
|
| 13. |
create_snapshot.shスクリプトを実行します。 このスクリプトは、新たにAWRスナップショットの作成を実行します。 ./create_snapshot.sh
|
|
| 14. |
実行後、再度run_workload.shスクリプトを実行し、処理が完了するまで待機します。 2回目の"PL/SQL procedure successfully completed"メッセージを確認したら、「return」を押します。
|
|
| 15. |
使用しているEnterprise Managerセッションに戻り、Average Active Sessionsグラフを確認します。 ConcurrencyおよびCluster待機クラスの率が低くなっていることがわかります。
|
|
| 16. |
ワークロードの実行が完了したら、create_snapshot.shスクリプトを実行します。 このスクリプトは、新規のADDM分析を自動実行するため、新たにAWRスナップショットの作成を実行します。 ./create_snapshot.sh
|
|
| 17. |
使用しているEnterprise Managerセッションに戻り、Average Active Sessionsグラフの下にある最新のスナップショットのアイコンをクリックします。 このアイコンにより、最新のADDMレポートに直接移動します。
|
|
| 18. |
ADDMレポート・ページで、シーケンスに問題がないことが確認できます。
|
|
このチュートリアルでは、Oracle RACのADDMの使用方法を学習しました。