19.2 Oracle GoldenGateでシャーディングを構成する方法

シャーディングを有効にする場合は、セキュアなデプロイメントを設定する必要があります。

前提条件

Oracle Database 21cリリースでは、コンテナ・データベースのみがサポートされています。これにより、Oracle GoldenGateでシャーディングをサポートするために、コンテナ・データベースと単一のPDBの使用が必須になります。Oracle Database 21cでOracle GoldenGate 21cとともにシャーディングを使用する場合の制約は、次のとおりです。
  • シャーディングのサポートは、単一のプラガブル・データベース(PDB)のみとコンテナ・データベース(CDB)に制限されています。

  • ベース・シャーディング機能ではCREATE SHARDをサポートしていないため、ADD SHARDのみがサポートされています。

  • 個別の非コンテナ(非CDB)ベースのシャードをコンテナ・データベース(CDB)ベースのシャードへアップグレードすることはサポートされていません。新しいシャードを追加し、古いシャードを削除する必要があります。

Oracle Shardingの使用シャードされたデータベースに関する項を参照してください。

シャーディング設定を開始する前に、次の手順に従います。

  • カタログおよび各シャード・データベースに対するOracle Databaseのインストールを完了します。

  • $ORACLE_BASE/admin ($ORACLE_BASEが定義されている場合)または$ORACLE_HOME/admin ($ORACLE_HOMEが定義されている場合)の下にOracle GoldenGateクライアント証明書を格納するためのggshd_walletディレクトリを作成します。

  • シャード・カタログまたはシャードが設定されているホストごとに1つのマイクロサービス・デプロイメントを追加します。

  • Oracle GoldenGate Microservicesサーバーおよびクライアントのウォレットと証明書を生成します。

  • SSL証明書で識別されるシャーディング・クライアント・ユーザーを認可します。

    (推奨)Oracle GoldenGateデプロイメントを1つのみ割り当て、高可用性を実現し、各シャードにシャードのパッチ適用を簡略化します。

セキュリティ証明書の生成の詳細は、セキュアなデプロイメントの要件を参照してください。

Oracle GoldenGateでのシャーディング構成

ベスト・プラクティスとして、デプロイメントは各シャード専用にする必要があります。これにより、高可用性が保証されます。Oracle GoldenGateのシャーディングを利用するメリットの詳細は、シャーディング・データベースに対するOracle GoldenGateを参照してください。

shardcatalogからシャードを追加する場合、またはシャードを作成する場合は、次のステップを実行してシャーディングを構成する必要があります。
  1. セキュア・モードでOracle GoldenGate Configuration Assistant (OGGCA)を使用してデプロイメントを追加します。

  2. クライアント証明書をggshd_walletにインポートします。Oracle GoldenGate Microservicesサーバーがシャードで稼働していることを確認します。

  3. Oracle Shardingコーディネータ(カタログ・データベース)に接続して、シャードされたデータベースの設定を準備します。

  4. $OGG_HOME/lib/sql/shardingディレクトリにあるOracle GoldenGateシャーディングのブートストラップ・スクリプトをロードします。これは1回かぎりのタスクです。

  5. Oracle Shardingコーディネータから次のコマンドを実行します。

    shardcatalog load (SYSで):

    $OGGHOME/lib/sql/sharding/ggsys_setup.sql
  6. シャードを追加する前に、次のコマンドをロードします(SYSで)。

    $OGGHOME/lib/sql/sharding/orashard_setup.sql 
    A serviceManagerURI/OGGDeployName 
    ggadmin_password shardconnect_string

    ノート:

    シャードを作成する場合、このコマンドは必要ありません。

Oracle GoldenGateのシャードを構成するには、次の2つの方法があります。

  • シャードの追加: 既存の単一インスタンス・データベースをシャードに変換します。ただし、インスタンスはユーザー・データを含まず、空のデータベースである必要があります。
  • シャードの作成: 実行時に新しいデータベースを設定します。これらのコマンドはGDSCTLシェル・インタフェースから発行されます。

Oracle Shardingの使用シャードの追加に関する項を参照してください


create shardcatalog -database bpodb12s:1521/sdbcat1 -user gsmcatuser/gsmcatuser -repl OGG -sharding SYSTEM -chunks 36

add gsm -gsm gsm1 -listener 1540 -catalog bpodb12s:1521/sdbcat1 -pwd gsmcatuser

add shardgroup -shardgroup shgrp1 -repfactor 3
add shardgroup -shardgroup shgrp2 -repfactor 2
…
create shard -shardgroup shgrp1 -destination host01 -CREDENTIAL gds_oracle -netparam none 
-gg_service host01:9000/deploy1
-gg_password ggadmin pw
create shard -shardgroup shgrp1 -destination host02 -CREDENTIAL gds_oracle -netparam none 
-gg_service host02:9000/deploy2 -gg_password ggadmin status
configure
add service ...
start service ..