

# 自動ワークロードリポジトリ (AWR) を使用したパフォーマンスレポートの生成
<a name="Appendix.Oracle.CommonDBATasks.AWR"></a>

パフォーマンスデータを収集してレポートを生成するにあたって、Oracle では自動ワークロードリポジトリ (AWR) を推奨しています。AWR には、Oracle Database Enterprise Edition と診断パックおよびチューニングパックのライセンスが必要です。AWR を有効にするには、初期化パラメータ `CONTROL_MANAGEMENT_PACK_ACCESS` に、`DIAGNOSTIC` または `DIAGNOSTIC+TUNING` を設定します。

## RDS での AWR レポートの使用
<a name="Appendix.Oracle.CommonDBATasks.AWRTechniques"></a>

AWR レポートを生成するには、`awrrpt.sql` などのスクリプトを実行します。これらのスクリプトは、データベースホストサーバーにインストールされます。Amazon RDS では、ホストに直接アクセスすることはできません。ただし、Oracle Database の別のインストールから SQL スクリプトのコピーを取得することは可能です。

また、`SYS.DBMS_WORKLOAD_REPOSITORY` PL/SQL パッケージでプロシージャを実行して AWR を使用することもできます。このパッケージを使用して、ベースラインとスナップショットを管理したり、ASH および AWR レポートを表示したりできます。例えば、テキスト形式で AWR レポートを生成するには、`DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_TEXT` プロシージャを実行します。ただし、これらの AWR レポートには、AWS マネジメントコンソール からはアクセスできません。

AWR を使用する場合は、`rdsadmin.rdsadmin_diagnostic_util` プロシージャを使用することをお勧めします。これらのプロシージャを使用すると、次の項目を生成できます。
+ AWR レポート
+ アクティブセッション履歴 (ASH) レポート
+ 自動データベース診断モニター (ADDM) レポート
+ AWR データの Oracle Data Pump Export ダンプファイル

`rdsadmin_diagnostic_util` プロシージャは、レポートを DB インスタンスファイルシステムに保存します。これらのレポートには、コンソールからアクセスできます。`rdsadmin.rds_file_util` プロシージャを使用してレポートにアクセスしたり、S3 統合オプションを使用して Amazon S3 にコピーされたレポートにアクセスすることもできます。詳細については、「[DB インスタンスディレクトリ内のファイルの読み取り](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles)」および「[「Amazon S3 統合」](oracle-s3-integration.md)」を参照してください。

以下の Amazon RDS for Oracle DB エンジンバージョンの `rdsadmin_diagnostic_util` 手順を使用できます。
+ すべての Oracle Database 21c バージョン
+ 19.0.0.0.ru-2020-04.rur-2020-04.r1 以上の Oracle Database 19c バージョン

レプリケーションシナリオで診断レポートを使用する方法を説明しているブログについては、「[Amazon RDS for Oracle リードレプリカの AWR レポートを生成する](https://aws.amazon.com/blogs/database/generate-awr-reports-for-amazon-rds-for-oracle-read-replicas/)」を参照してください。

## Diagnostic Utility Package の一般的なパラメータ
<a name="Appendix.Oracle.CommonDBATasks.CommonAWRParam"></a>

`rdsadmin_diagnostic_util` パッケージを使用して AWR および ADDM を管理する場合は、通常、次のパラメータを使用します。

<a name="rds-provisioned-iops-storage-range-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.AWR.html)

rdsadmin\$1diagnostic\$1util パッケージで ASH を管理する場合は、通常、次のパラメータを使用します。

<a name="rds-provisioned-iops-storage-range-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.AWR.html)

## AWR レポートの生成
<a name="Appendix.Oracle.CommonDBATasks.GenAWRReport"></a>

AWR レポートを生成するには、`rdsadmin.rdsadmin_diagnostic_util.awr_report` の手順を使用します。

次の例は、スナップショット範囲 101～106 の AWR レポートを生成します。出力テキストファイルには `awrrpt_101_106.txt` という名前が付けられます。このレポートには、AWS マネジメントコンソール からアクセスできます。

```
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_report(101,106,'TEXT');
```

次の例は、スナップショット範囲 63～65 の HTML レポートを生成します。出力 HTML ファイルには `awrrpt_63_65.html` という名前が付けられます。プロシージャによって、レポートが `AWR_RPT_DUMP` という名前のデフォルト以外のデータベースディレクトリに書き込まれます。

```
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_report(63,65,'HTML','AWR_RPT_DUMP');
```

## ダンプファイルへの AWR データの抽出
<a name="Appendix.Oracle.CommonDBATasks.ExtractAWR"></a>

AWR データをダンプファイルに抽出するには、`rdsadmin.rdsadmin_diagnostic_util.awr_extract` プロシージャを使用します。この関数は PDB レベルでのみ使用できます。

次の例は、スナップショット範囲 101～106 を抽出します。出力ダンプファイルには `awrextract_101_106.dmp` という名前が付けられます。このファイルには、コンソールからアクセスできます。

```
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_extract(101,106);
```

次の例は、スナップショット範囲 63～65 を抽出します。出力ダンプファイルには `awrextract_63_65.dmp` という名前が付けられます。ファイルは、`AWR_RPT_DUMP` という名前のデフォルト以外のデータベースディレクトリに保存されます。

```
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_extract(63,65,'AWR_RPT_DUMP');
```

## ADDM レポートの生成
<a name="Appendix.Oracle.CommonDBATasks.ADDM"></a>

ADDM レポートを生成するには、`rdsadmin.rdsadmin_diagnostic_util.addm_report` プロシージャを使用します。

次の例は、スナップショット範囲 101～106 の ADDM レポートを生成します。出力テキストファイルには `addmrpt_101_106.txt` という名前が付けられます。レポートには、コンソールからアクセスできます。

```
EXEC rdsadmin.rdsadmin_diagnostic_util.addm_report(101,106);
```

次の例は、スナップショット範囲 63～65 の ADDM レポートを生成します。出力テキストファイルには `addmrpt_63_65.txt` という名前が付けられます。ファイルは、`ADDM_RPT_DUMP` という名前のデフォルト以外のデータベースディレクトリに保存されます。

```
EXEC rdsadmin.rdsadmin_diagnostic_util.addm_report(63,65,'ADDM_RPT_DUMP');
```

## ASH レポートの生成
<a name="Appendix.Oracle.CommonDBATasks.ASH"></a>

ASH レポートを生成するには、`rdsadmin.rdsadmin_diagnostic_util.ash_report` プロシージャを使用します。

次の例では、14 分前から現在の時刻までのデータを含む ASH レポートを生成します。出力ファイルの名前は `ashrptbegin_timeend_time.txt` の形式を使用し、`begin_time` および `end_time` は `YYYYMMDDHH24MISS` の形式を使用します。ファイルには、コンソールからアクセスできます。

```
BEGIN
    rdsadmin.rdsadmin_diagnostic_util.ash_report(
        begin_time     =>     SYSDATE-14/1440,
        end_time       =>     SYSDATE,
        report_type    =>     'TEXT');
END;
/
```

次の例では、2019 年 11 月 18 日の午後 6:07 から 2019 年 11 月 18 日の午後 6:15 までのデータを含む ASH レポートを生成します。出力 HTML レポートの名前は `ashrpt_20190918180700_20190918181500.html` です。レポートは、`AWR_RPT_DUMP` という名前のデフォルト以外のデータベースディレクトリに保存されます。

```
BEGIN
    rdsadmin.rdsadmin_diagnostic_util.ash_report(
        begin_time     =>    TO_DATE('2019-09-18 18:07:00', 'YYYY-MM-DD HH24:MI:SS'),
        end_time       =>    TO_DATE('2019-09-18 18:15:00', 'YYYY-MM-DD HH24:MI:SS'),
        report_type    =>    'html',
        dump_directory =>    'AWR_RPT_DUMP');
END;
/
```

## コンソールまたは CLI からの AWR レポートへのアクセス
<a name="Appendix.Oracle.CommonDBATasks.AWRConsole"></a>

AWR レポートにアクセスしたり、ダンプファイルをエクスポートしたりするには、AWS マネジメントコンソール または AWS CLI を使用します。詳細については、「[データベースログファイルのダウンロード](USER_LogAccess.Procedural.Downloading.md)」を参照してください。