7.7.1.7.24 role属性

用途

role属性を使用すると、Oracle Data Guardデータベース・ロールに基づいて異なるプラン・ディレクティブを指定できます。データベースのディレクティブが適用されるのは、データベースが指定したロールになった場合のみです。Oracle Data Guardのスイッチオーバーまたはフェイルオーバーのためにデータベースがロールを変更すると、IORMによって新しいディレクティブが自動的に適用されます。

構文

 ALTER IORMPLAN 
   dbplan=(( name=db_name, ... role={primary|standby} ... ) ... )

使用上のノート

  • role属性を使用するディレクティブは、同じname値を使用して一致したペアで定義する必要があります。つまり、role=primaryを指定するディレクティブごとに、role=standbyを指定した対応するディレクティブが必要です。同様に、各スタンバイ・ディレクティブには、対応するプライマリ・ディレクティブが必要です。

  • プライマリ・ディレクティブとスタンバイ・ディレクティブの両方でデータベースを識別するには、同じname値を使用する必要があります。これを実現するため、次を行うことができます。

    • name属性をスタンバイ・データベースのDB_UNIQUE_NAMEパラメータの値に設定し、プライマリ・データベースのDB_NAMEパラメータを同じ値に設定します。このオプションを使用すると、特定のディレクティブを定義して複数のスタンバイ・データベースを管理できます。

    • name属性をDB_NAMEデータベース・パラメータの値に設定します。これでプライマリ・データベースとスタンバイ・データベースで同じ値になります。このオプションは、スタンバイ・データベースに関連するすべてのセル・メトリックが単一の名前で集計されるため、複数のスタンバイ・データベースをサポートする場合にはお薦めしません。

  • role属性が指定されていない場合は、データベース・ロールに関係なくディレクティブが適用されます。

  • 割当てベースのリソース管理(levelおよびallocation属性を使用)では、levelroleの組合せごとに割当て値の合計(OTHERを含む)が100を超えることはできません。

  • role属性は、DEFAULTまたはOTHERディレクティブでは指定できません。

例7-54 割当てベースのリソース管理でのrole属性の使用

CellCLI> ALTER IORMPLAN                                                     -
         dbplan=((name=sales_prod, level=1, allocation=30, role=primary),   -
                 (name=sales_prod, level=1, allocation=20, role=standby),   -
                 (name=sales2, level=1, allocation=20),                     -
                 (name=other, level=3, allocation = 50))

例7-55 共有ベースのリソース割当てでのrole属性の使用

CellCLI> ALTER IORMPLAN                                               -
         dbplan=((name=salesprod, share=4, role=primary),             -
                 (name=salesprod, share=1, limit=50, role=standby),   -
                 (name=finance, share=4),                             -
                 (name=hr, share=2))