OCI Database ManagementでオンプレミスのOracle Databaseのパフォーマンス監視をする

OCIの[Database Management](https://www.oracle.com/jp/manageability/database-management/)は、Oracle Databaseのリソースやパフォーマンス監視に特化したクラウドサービスです。監視対象とするデータベースは、オンプレミスおよびクラウド上のいずれも可能なのですが、構成や設定方法がそれぞれ異なります。

対象がオンプレミスまたはDB on IaaSとしてのOracle Databaseの場合は、管理エージェントというプログラムをインストールし、管理エージェントがDatabaseにアクセスし、ディクショナリの情報をDatabase Managementにアップロードするという動きになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/b3253131-b7ef-5559-a8ab-d99106e94df8.png)

また、ネットワークの制約上、管理エージェントが直接Database Managementと通信できない場合は、ゲートウェイを経由する方式と取ることもできます。ゲートウェイは、[こちら](https://qiita.com/western24/items/d0e923ba0a9f03956d87)を参照。

今回は、管理エージェントを使ったスタンダートな設定手順について紹介します。

※Base DB, ExaDB-DのOracle Cloud Databaseの場合の設定手順は、[こちら](https://qiita.com/western24/items/bac8190ee08a8b1cf339)を参照下さい。


## IAMポリシーの設定
OCIメニューから、監視および管理 -> データベース管理 -> 概要ページにあるポリシーの追加から推奨ポリシーを作成することが可能。もしくは、[ドキュメント](https://docs.oracle.com/en-us/iaas/database-management/doc/permissions-required-database-management.html)を参考に割り当てる


## 管理エージェントのインストール

管理エージェントは[この記事](https://qiita.com/western24/items/409d93b911c7094f5137)の手順、動的グループの作成からインストールまでを実施


## 外部データベースの登録

- OCIメニューのOracle Database -> 外部データベースをクリック
今回は非コンテナ・データベースの登録をする。コンテナDBの場合はコンテナ->プラガブルの順番で登録
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/9738ab83-79be-163c-54b6-2809e4e939c6.png)

- 任意の名前で登録後、以下の外部非CDBに接続をクリックし、DBへの接続情報を登録する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/af30625f-c72e-8852-7c06-af1bd578ee36.png)

- 管理エージェントがデータベースに接続できる設定情報を記述する。今回は、利便性のためにsystemユーザーを使用しているが、本番環境では、[DBSNMPユーザー](https://docs.oracle.com/ja-jp/iaas/database-management/doc/database-user-privileges-required-database-management.html#GUID-5851995B-5E6D-4A3E-B621-D4234DCD804F)などの権限が絞られたユーザーを使用するのが適切 
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/85478032-c6da-e121-6d3e-e7a77c8b5ac8.png)

- 正常に登録が完了後、データベース管理を有効化に変更する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/78f77771-f19c-76c5-3798-654622e56e4a.png)

## 管理エージェントのプラグインのデプロイ
OCIメニューから、監視及び管理 -> 管理エージェント -> エージェントからインストールしたエージェントを選択し、Database Managementのプラグインをデプロイする
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/643dc4fc-089b-8b33-6291-e43963bc5258.png)


## Database Managementの確認

- OCIメニューから、運監視および管理 -> データベース管理 -> フリート・サマリーから登録したデータベースが表示されているのを確認
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/b989f934-5adc-ecb6-b824-0fc7626487a7.png)

- パフォーマンス・ハブをクリックして以下のエラーが表示される場合は、Database Managementの接続ユーザーに指定された権限を付与する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/ac70c3b7-68b2-8b33-67ea-c3f7941221f5.png)

```
GRANT CREATE PROCEDURE to system;
GRANT SELECT ANY DICTIONARY, SELECT_CATALOG_ROLE to  system;
GRANT ALTER SYSTEM to  system;
GRANT ADVISOR to  system;
GRANT EXECUTE ON DBMS_WORKLOAD_REPOSITORY to  system;
```

- 権限付与後には、Performance Hubにアクセスするとより詳細なSQLレベルでのパフォーマンス分析が可能になる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/3d3b6a8e-55de-ab85-9475-d8e05ee72615.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/d7763400-4bda-6fea-a65b-3540209670bb.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/c6d43795-679a-af2e-8702-c59514bf8870.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/55c83016-9506-9c01-0231-2fa042eaaa44.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/1ba6d889-df09-f29e-7e44-3169aee6b791.png)

- Active Session History分析
グラフによるセッション情報の可視化、セッション情報からDBで発生している問題を特定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/f816566d-8e6b-3fdd-a334-cb9283a54ad6.png)

- SQLチューニング・アドバイザ
パフォーマンスが最適ではないSQLを特定し、改善の方法を明確な根拠に基づいてアドバイス
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/fdbb03dd-6821-044f-dde8-34c1c15b6dad.png)

- AWRエクスプローラ
SQL文を直接実行せずに、画面UI上からAWRレポート情報を取得し、表に可視化
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/ad4adc91-f0fc-6ca6-7f8e-047cb34521c2.png)

また、具体的な動作は、[Youtube](https://www.youtube.com/playlist?list=PLiuPvpy8QsiX4V3uJ0W77LgP-Syt3598N)でいろんなパターンが紹介されています