4.8 データベース・ユーザー資格証明を使用したデータベースの監視

AHFでは、構成されたユーザー名とパスワードを使用したデータベースの監視がサポートされるようになり、SYSDBA権限が不要になりました。

ノート:

AHFによるSQLの実行には、デフォルトのデータベース接続(/ as sysdba)の方法を使用することをお薦めします。実行されるSQL文の多くでは内部データベース構造へのアクセスが必要となるため、AHFに一般ユーザーを使用すると、データベース診断収集を実行するときの診断機能が制限されます。
  1. AHFがデータベースに接続するためのデータベース・ユーザーを作成します。データベースがマルチテナントの場合、ユーザーはコンテナ・データベース(CDB)内に作成する必要があります。
    マルチテナントの例:
    SQL> create user C##AHFUSER identified by <password>;
    マルチテナント以外の例:
    SQL> create user AHFUSER identified by <password>;
  2. AHFユーザーに、次のロールおよび権限を付与します:
    • SELECT ANY DICTIONARY
    • ALTER SESSION
    • ALTER SESSION SET CONTAINER (マルチテナント・データベースにのみ必要)
    • CREATE SESSION
    • SELECT_CATALOG_ROLE
    マルチテナントの例:
    SQL> grant SELECT ANY DICTIONARY to C##AHFUSER container=any;
    
    SQL> grant ALTER SESSION to C##AHFUSER container=any;
    
    SQL> grant ALTER SESSION SET CONTAINER to C##AHFUSER container=any;
    
    SQL> grant CREATE SESSION to C##AHFUSER container=any;
    
    SQL> grant SELECT_CATALOG_ROLE to C##AHFUSER container=any;
    マルチテナント以外の例:
    SQL> grant SELECT ANY DICTIONARY to AHFUSER;
    
    SQL> grant ALTER SESSION to AHFUSER;
    
    SQL> grant CREATE SESSION to AHFUSER;
    
    SQL> grant SELECT_CATALOG_ROLE to AHFUSER;
  3. Oracle Databaseソフトウェア所有者として、データベース・ログイン資格証明をAHFウォレットに追加します。

    ノート:

    資格証明をウォレットに格納するときには、データベースの一意名(DB_UNIQUE_NAME)使用する必要があります。これにより、指定されたシステムでのデータベースの一意性が保証されます。
    $ ahfctl setpassword -db <db_unique_name> -user <username>