マルチテナント・コンテナ・データベースの構成

Oracle GoldenGateとOracle Databaseを使用すると、各プラガブル・データベース(PDB)で、特定のPDBにExtractを登録でき、これらはPDBごとのExtractと呼ばれます。

次の図は、マルチテナント・コンテナ・データベース構成における様々なアプローチの構成を示しています:

pdb_extract_feedbk.pngの説明が続きます
図pdb_extract_feedbk.pngの説明

Oracleマルチテナント・データベースのExtractを構成するには、2つのアプローチがあります。
  • アプローチ1: PDBから直接Extractを追加します。このアプローチは、Extractが分離されたPDBからキャプチャし、PDBレベルで所有権および責任を管理する場合に役立ちます。

  • アプローチ2: ルート・コンテナにExtractを追加し、関連付けられたPDBを参照します。このアプローチは、Extractが複数のPDBからデータをキャプチャする場合に便利です。

アプローチ1を使用する場合は、ローカルPDBユーザー(ggadminなど)として接続してPDBごとのExtractを作成し、このExtractをPDBに登録できます。PDBユーザーとしてすでにログインしているため、container句は必要ありません。同様に、SOURCECATALOGおよび2つの部分からなる命名規則も適切です。

アプローチ2を使用する場合は、共通データベース・ユーザーc##ggadminを使用してルート・コンテナに接続し、特定のPDBに対してExtractを作成できます。このExtractは、container句を使用して特定のPDBに登録する必要があります。container句には、1つまたは複数のPDBを含めることができます。

ノート:

ルートレベルのExtractを使用する場合でも、キャプチャする必要があるPDBごとにユーザー資格証明が必要です。ハートビート表も個々のPDBに存在します。

Extractを設定するには、「プライマリExtractの追加」を参照してください。

マルチテナント・コンテナ・データベース構成に関する考慮事項

Oracle GoldenGateを使用してデータ・レプリケーション用にマルチテナント・コンテナ・データベースを構成する場合は、次のガイドラインを考慮してください:

  • マルチテナント・コンテナ・データベース内の異なるプラガブル・データベースが異なる文字セットを持つことができます。Oracle GoldenGateは、異なる文字セットを持つマルチテナント・データベースから、1つの証跡ファイルにデータをキャプチャして、データをレプリケートしますが、異なる文字セットの使用によってデータは破損しません。

  • PDBごとのExtractを作成して登録するには、PDBレベルのアクセス用に作成されたggadminなどのPDBユーザーに接続する必要があります。USERIDALIASパラメータを使用して、ggadmin@pdbeastなどのSQL*Net接続文字列を構成します。PDBごとのExtractを設定するためにコンテナ句またはSOURCECATALOGは必要ありません

  • ルート・コンテナのユーザーを追加するには、ログマイニング・サーバーと対話するために、Extractが共通ユーザーとしてルート・コンテナ(cdb$root)に接続する必要があります。ルート・コンテナを指定するには、USERIDALIASパラメータで指定するデータベース・ユーザーに適切なSQL*Net接続文字列を使用します(c##ggadmin@dbeastなど)。

  • ソースCDB 12.2をサポートするためには、Extractで証跡形式としてリリース12.3を指定する必要があります。REDOログ内の変更により、Oracle 12.2以上のマルチテナント・データベースからキャプチャするには、証跡フォーマット・リリースが12.3以上である必要があります。

  • DDLレプリケーションはマルチテナント・データベースの通常のレプリケーションとして機能します。

Oracle GoldenGate資格証明にマルチテナント・コンテナ・データベース・ユーザーを追加するには、「データベース資格証明の追加」を参照してください。構成する必要があるOracleデータベース・インストールに応じて、「Oracle Database 21c以前のユーザー権限の付与」を参照してください。