RDS for Oracle レプリカに関する考慮事項 - Amazon Relational Database Service

RDS for Oracle レプリカに関する考慮事項

Oracle レプリカを作成する前に、次の要件、制限、推奨事項を確認してください。

RDS for Oracle レプリカのバージョンとライセンスに関する考慮事項

RDS for Oracle レプリカを作成する前に、次の要件、制限、推奨事項を確認してください。

  • レプリカが読み取り専用モードの場合は、Active Data Guard ライセンスがあることを確認してください。レプリカをマウントモードにした場合、Active Data Guard ライセンスは必要ありません。マウントされたレプリカをサポートするのは、Oracle DB エンジンだけです。

  • Oracle レプリカは、Oracle Enterprise Edition (EE) エンジンでのみ使用することができます。

  • Oracle レプリカは、バージョンの Oracle Database 12c リリース 1 (12.1.0.2.v10) 以降の 12c リリース、Oracle データベース 19c の CDB 以外のインスタンスを使用して作成されたインスタンスで使用可能です。CDB のレプリカはサポートされていません。

  • Oracle レプリカは、2 つ以上の vCPU を持つ DB インスタンスクラスで実行されている DB インスタンスでのみ使用できます。ソース DB インスタンスは、db.t3.micro や db.t3. スモールインスタンスクラスは使用できません。

  • ソース DB インスタンスとそのすべてのレプリカの Oracle DB エンジンバージョンは同じである必要があります。Amazon RDS では、レプリカのメンテナンスウィンドウに関係なく、ソース DB インスタンスのアップグレード後すぐにレプリカのアップグレードが行われます。クロスリージョンレプリカのメジャーバージョンアップグレードの場合、Amazon RDS は自動的に以下を実行します。

    • ターゲットバージョンのオプショングループを生成します。

    • 元のオプショングループから新しいオプショングループにすべてのオプションとオプション設定をコピーします。

    • アップグレードされたクロスリージョンレプリカを新しいオプショングループに関連付けます。

    DB エンジンバージョンのアップグレードの詳細については、「RDS for Oracle DB エンジンのアップグレード」を参照してください。

RDS for Oracle レプリカのオプションに関する考慮事項

RDS for Oracle レプリカを作成する前に、次の要件、制限、推奨事項を確認してください。

  • Oracle レプリカがソース DB インスタンスと同じ AWS リージョンにある場合は、そのレプリカがソース DB インスタンスと同じオプショングループに属していることを確認してください。ソースオプショングループまたはソースオプショングループメンバーシップへの変更はレプリカに反映されます。これらの変更は、レプリカのメンテナンスウィンドウに関係なく、ソース DB インスタンスに適用された後すぐにレプリカに適用されます。

    オプショングループの詳細については、「オプショングループを使用する」を参照してください。

  • Oracle クロスリージョンレプリカを作成する場合、Amazon RDS によりそのための専有オプショングループが作成されます。

    Oracle クロスリージョンレプリカをその専有オプショングループから削除することはできません。Oracle クロスリージョンレプリカの専有オプショングループを他の DB インスタンスが使用することはできません。

    専用オプショングループには、次のレプリケートされていないオプションのみを追加または削除できます。

    • NATIVE_NETWORK_ENCRYPTION

    • OEM

    • OEM_AGENT

    • SSL

    Oracle クロスリージョンレプリカにその他のオプションを追加するには、オプションをソース DB インスタンスのオプショングループに追加します。オプションは、すべてのソース DB インスタンスのレプリカにもインストールされます。ライセンス供与オプションについては、レプリカに十分なライセンスがあることを確認してください。

    Oracle クロスリージョンレプリカを昇格するとき、昇格されたレプリカは、オプションの管理を含め、その他の Oracle DB インスタンスと同じように動作します。レプリカは、明示的にまたはソース DB インスタンスを削除して暗黙的に昇格できます。

    オプショングループの詳細については、「オプショングループを使用する」を参照してください。

RDS for Oracle レプリカのバックアップと復元に関する考慮事項

RDS for Oracle レプリカを作成する前に、次の要件、制限、推奨事項を確認してください。

  • RDS for Oracle レプリカのスナップショットを作成したり、自動バックアップを有効にしたりするには、必ずバックアップ保持期間を手動で設定してください。[Automatic backups] (自動バックアップ) はデフォルトで有効になっています。

  • データベースの時刻では、バックアップ時にデータにトランザクションが最後に適用された時刻を参照します。レプリカのバックアップを復元するときは、バックアップが実行された時刻ではなく、データベースの時刻に復元することになります。レプリカはプライマリよりも数分または数時間遅れることがあるため、この違いは重大です。

    差を確認するには、describe-db-snapshots コマンドを使用します。レプリカのバックアップのデータベース時間である snapshotDatabaseTime と、プライマリデータベースで最後に適用されたトランザクションである OriginalSnapshotCreateTime を比較します。

RDS for Oracle レプリカに関するその他の考慮事項

RDS for Oracle レプリカを作成する前に、次の要件、制限、推奨事項を確認してください。

  • DB インスタンスが 1 つ以上のクロスリージョンレプリカのソースである場合、ソース DB はそのアーカイブされた REDO ログがすべてのクロスリージョンレプリカに適用されるまで、これらのログを保持します。アーカイブされた REDO ログにより、ストレージの消費が増える場合があります。

  • プライマリインスタンスのログイントリガーは、RDS_DATAGUARD ユーザーへのアクセス、および AUTHENTICATED_IDENTITY の値が RDS_DATAGUARD または rdsdb であるすべてのユーザーへのアクセスを許可する必要があります。また、トリガーで RDS_DATAGUARD ユーザーの現在のスキーマを設定しないでください。

  • RDS 自動化の中断を避けるために、システムトリガーでは、特定のユーザーがプライマリデータベースとレプリカデータベースへのログオンを許可する必要があります。システムトリガーには、DDL、ログオン、およびデータベースロールトリガーが含まれます。以下のサンプルコードに記載されているユーザーを除外するために、トリガーにコードを追加することをお勧めします。

    -- Determine who the user is SELECT SYS_CONTEXT('USERENV','AUTHENTICATED_IDENTITY') INTO CURRENT_USER FROM DUAL; -- The following users should always be able to login to either the Primary or Replica IF CURRENT_USER IN ('master_user', 'SYS', 'SYSTEM', 'RDS_DATAGUARD', 'rdsdb') THEN RETURN; END IF;
  • Data Guard ブローカープロセスからの接続のブロックを回避するには、制限セッションを有効にしないでください。制限セッションの詳細については、「制限セッションの有効化と無効化」を参照してください。

  • ブロック変更の追跡は、読み取り専用レプリカではサポートされますが、マウントされたレプリカではサポートされません。マウントされたレプリカを読み取り専用レプリカに変更し、ブロック変更の追跡を有効にすることができます。(詳しくは、「ブロック変更追跡の有効化/無効化」を参照してください。)