OCIのDatabase Managementは、Oracle Databaseのリソースやパフォーマンス監視に特化したクラウドサービスです。監視対象とするデータベースは、オンプレミスおよびクラウド上のいずれも可能なのですが、構成や設定方法がそれぞれ異なります。
対象がBase-DB、ExaDB-DなどのOracle Cloud Databaseの場合は、以下のようにDatabase ManagementがPrivate Endpointを経由して直接アクセスし、ディクショナリの情報を取りに行きます。
今回は、Base-DBのCDB及びPDBをDatabase Managementに登録して使用する手順について紹介します。
※オンプレミスまたはDB on IaaSのOracle Databaseの設定手順は、こちらを参照下さい。
プライベート・エンドポイントの作成
- まず初めにプライベート・エンドポイントを作成する
OCIのメニューから、監視および管理 -> データベース管理 -> 管理 -> プライベート・エンドポイントの作成
※ NSGを指定しない場合は、サブネットのセキュリティ・リストがDBリスナーのポートをオープンしていることを確認
※ BaseDBのRAC構成やExaDB-Dの場合は、RAC用のチェックをつける
Vaultのシークレットに接続パスワードを指定する
- DB Managementが対象データベースの接続に使用するユーザー名とパスワードのうち、パスワードはVaultのシークレットで管理する必要がある。そのため、VaultのシークレットにDBパスワードを格納する
OCIメニューから、セキュリティ -> ボールトから新規ボールトを作成し、その中にAESキーを一つ作成する
Vault内にシークレットを作成する。シークレット・コンテンツは、DB Managmentの接続ユーザーに使用するパスワード(今回は、systemユーザーを使用するので、そのパスワードを記述)
Database Managementを有効化する(CDB)
-
サービス名などは自動入力されているものでOK。今回使用するDBユーザ名はsystem、パスワードのシークレットとプライベートエンドポイントは、事前に作成しておいたものを指定する
※管理オプションは、PDBも監視対象にし、DB Managementのフル機能を使用するので完全管理を選択する -
有効化が完了後、OCIのメニューから、監視および管理 -> データベース管理 -> フリート・サマリーのページ遷移し、タイプをCDBに変更すると、Base DBのCDBが表示される
-
パフォーマンス・ハブをクリックして以下のエラーが表示される場合は、Database Managementの接続ユーザーに指定された権限を付与する
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;
Database Managementを有効化する(PDB)
以上の手順のように、Oracle Cloud Databaseの場合は、OCIコンソールのみでDatabase Managementの有効化(登録)、無効化(削除)が比較的に簡単に実行することが可能です。
Single DB, RAC DBの場合でも基本的に手順は同じです。また、Data Guard構成の場合は、Standby Database側で同様の手順にてDatabase Managementを有効化させることが可能です。
Database Managementが提供する主な機能
また、具体的な動作は、Youtubeでいろんなパターンが紹介されています