14 アップグレード

この項では、OracleデータベースのためのOracle GoldenGate Microservices Architectureをアップグレードする手順について説明します。

トピック:

Oracle GoldenGateディストリビューションの入手

Oracle GoldenGateを入手するには、次のステップを実行します。

  1. edelivery (edelivery.oracle.com)に移動します。
    詳細は、MOSノート1645495.1および2193391.1も参照してください。
    Oracle Technology Networkにアクセスするには、https://www.oracle.com/middleware/technologies/goldengate.htmlに移動します。
  2. Oracle GoldenGate 21cリリースを探して、使用中のシステムにZIPファイルをダウンロードします。

Oracle Fusion Middleware製品の検索やダウンロードの詳細は、Oracle Technology NetworkでOracle Fusion Middlewareのダウンロード、インストールおよび構成のREADMEファイルを参照してください。

前提条件

Oracle GoldenGate Microservices Architectureをアップグレードするための前提条件について学習します。

ベスト・プラクティスとして、まず最小または基本アップグレードを実行します。これは、新機能や追加または必須でないパラメータを追加せずにアップグレードを実行することを意味します。

Oracle GoldenGateがExtractの存在するソース側でアップグレードされた場合、証跡ファイルの形式は変わりません。上位のFORMAT RELEASEEXTTRAILファイルに調整された場合、またはETROLLOVERが実行された場合にのみ、証跡ファイルは上位のリリースにアップグレードされます。これにより、Replicatが存在するターゲット・システムを独立してアップグレードできます。すべてのターゲット・システムがアップグレードされたら、EXTTRAILパラメータの形式リリースを更新して、上位の証跡ファイル形式に依存する新機能を利用できます。プロセスを再配置する必要はありません。

環境が正常にアップグレードされたことを確認した後、必要に応じて新機能および追加パラメータを実装できます。

アップグレード手順には、ソースまたはターゲット・データベースとOracle GoldenGateを同時にアップグレードするためのステップも含まれています。

Oracle GoldenGateのアップグレードに関する考慮事項

アップグレードを開始する前に、ExtractおよびReplicatのアップグレードに関する情報を確認してください。

ソース・インストールとターゲット・インストールの両方ではなく、どちらか1つのみをアップグレードする場合でも、アップグレードにはすべてのプロセスが関係します。どのコンポーネントをアップグレードするかに関係なく、すべてのプロセスをアップグレードの適切な順序で停止し、空になるまで証跡を処理する必要があります。

証跡ファイル・フォーマットを調整する必要がないように、ソースではなくターゲットからアップグレードを開始することをお薦めします。

インストール・バイナリおよびデプロイメント

Microservice Architectureでは、ソフトウェアがインストールされている場所と、パラメータ・ファイル、レポート・ファイルおよび証跡ファイルを含むOracle GoldenGateインスタンスのデプロイメント・ディレクトリ構造との間に強力な分離があります。どちらの領域でも、ソフトウェア・バイナリとデプロイメントは厳密に分離されています。そのため、デプロイメントに関連する新旧のソフトウェア・インストールの間に干渉はありません。ソフトウェアのアップグレード中に、新しいソフトウェアは個別にインストールされます。古いソフトウェアを使用しているデプロイメントは停止されます。その後、デプロイメント環境は新しいソフトウェアに調整され、デプロイメントが再起動されます。

ホスト・マシンにOGG_HOME/lib/utl/reverseproxy/ReverseProxySettingsで生成されたリバース・プロキシ構成がある場合は、それを再構成して、Oracle GoldenGate 21c (21.3)以降のリリースで使用可能な拡張ReverseProxySettingユーティリティを利用することを検討してください。

サービス・マネージャおよびその他のデプロイメントのアップグレードに関する考慮事項

Oracle GoldenGateをアップグレードする場合は、最初にサービス・マネージャを更新する必要があります。サービス・マネージャのソフトウェア・バージョンは、デプロイメントのバージョン以上である必要があります。サービス・マネージャが最も高いバージョンで実行され、デプロイメントがそれより低いバージョンで実行されていても問題はありません。

アップグレードが完了したら、UPGRADE HEARTBEATTABLEコマンドを実行して、表とラグのビューに追加の列を追加します。これらの追加の列は、Extractの再開位置の追跡に使用されます。詳細は、UPGRADE HEARTBEATTABLEを参照してください。

トピック:

Extractのアップグレードに関する考慮事項

統合構成(多数のソースと1つのターゲット)で動作する複数のExtractプロセスをアップグレードする場合は、一度に1つのExtractをアップグレードします。

出力証跡ファイルはExtractの再起動時に自動的にロールオーバーされ、統合Extractバージョンはアップグレードされます。

Oracle GoldenGate 21cではTIMEZONEデータ型が異なる方法で管理されるため、Extractバージョン1によって書き込まれた古い証跡ファイルを使用した後に、ALTER REPLICAT extseqnoコマンドを実行して新しい証跡ファイルと同期する必要がある場合があります。

Replicatのアップグレードに関する考慮事項

すべてのReplicatインストールを同時にアップグレードする必要があります。全ターゲット・システムのすべてのReplicatグループにつながる証跡すべてを、アップグレード手順に従って、空になるまで処理することが重要です。

Oracle GoldenGateの19cリリースより前のリリースからアップグレードする場合は、ReplicatでSOURCEDEFパラメータを使用しないでください。そうしないと、Replicatが異常終了します。ただし、証跡ファイル形式が12.2より前である場合は、証跡ファイル内にメタデータが存在しないため、SOURCEDEFが必要です。

Oracle GoldenGate 21cではTIMEZONEデータ型が異なる方法で管理されるため、Extractによって書き込まれた古い証跡ファイルを使用した後に、ALTER REPLICAT extseqnoコマンドを実行して新しい証跡ファイルと同期する必要がある場合があります。

Oracle GoldenGate Microservicesのアップグレード – GUIベース

GUIを使用してOracle GoldenGate Microservicesをアップグレードするステップについて学習します。

次の手順に従って、Oracle GoldenGateインストール・ソフトウェアを取得し、アップグレード用にディレクトリを設定します。

  1. Oracle Technology NetworkまたはeDeliveryから最新のOracle GoldenGate Microservices 21cソフトウェアをダウンロードします。

  2. Oracle GoldenGate 21c MAソフトウェアをステージング・フォルダに移動し、解凍します。

    Linuxの場合は、次の例を使用します。

    $ mv /home/user/fbo_ggs_Linux_x64_Oracle_services_shiphome.zip /tmp
    $ cd /tmp$ unzip fbo_ggs_Linux_x64_Oracle_services_shiphome.zip
  3. Oracle GoldenGate Microservices 21cソフトウェアを、以前のリリースのOracle GoldenGate Microservicesが存在しているサーバー上のステージングの場所にアップロードします。

  4. 変更を保存してサービス・マネージャの概要ページに戻ります。

  5. デプロイメントの「アクション」ドロップダウンを選択し、「再開」を選択します。

  6. 「管理サービス」にログインし、「Replicat」セクションの「アクション」ボタンをクリックします。

  7. 「パラメータ・ファイル」タブをクリックし、BATCHSQLパラメータの値をBATCHESPERQUEUEの値の2倍に変更します。Replicatを起動する前にこれを実行する必要があります。例: BATCHSQL BATCHESPERQUEUE 40000000

  8. 「管理サービス」に再度ログインし、ExtractおよびReplicatを起動します。

この時点で、新しいOracle GoldenGate 21c MAホームと、Oracle GoldenGate MAの以前のリリース・ホームが必要です。

サービス・マネージャのアップグレード

最新のOracle GoldenGate MAバージョンをインストールした後、次のステップはサービス・マネージャをアップグレードすることです。
  1. URL https://hostname:servicemanager_portからサービス・マネージャにログインします。

  2. サービス・マネージャの概要ページの「デプロイメント」セクションで「サービス・マネージャ」リンクを選択します。

  3. 「デプロイメントの詳細」セクションの横にある鉛筆アイコンをクリックし、GoldenGateホーム・パスを編集するためのダイアログ・ボックスを開きます。

  4. 「GoldenGateホーム」を、新しいOracle GoldenGateホームへのフルパスで更新します。

  5. 「適用」をクリックします。

  6. 「アクション」ドロップダウンを使用して、サービス・マネージャを再起動します。

デプロイメントのアップグレード

デプロイメントは、サービス・マネージャと同じステップでアップグレードすることも、サービス・マネージャのアップグレード後にアップグレードすることもできます。

デプロイメントをアップグレードするには、次の手順に従います。

  1. すべてのExtractおよびReplicatプロセスを正常に停止します。
    • Extractの正常な停止に時間がかかる可能性があるため、オープン(長時間実行)トランザクションおよびBounded Recoveryがあるか確認します。

    • 不要なオープン・トランザクション(SEND EXTRACT group_name SHOWTRANSなど)が表示されている場合は、それらのトランザクションをスキップするか、ただちに強制的に停止できます。この場合、次のコマンドを使用してBounded Recoveryチェックポイントを取得できます。

      SEND EXTRACT group_name, BR BRCHECKPOINT immediate

  2. サービス・マネージャからOracle GoldenGateホーム・ディレクトリの現在の場所を確認します。
    1. サービス・マネージャにログインします。http://hostname:servicemanager_port
    2. サービス・マネージャの概要ページで、「デプロイメント」セクションにあるデプロイメント名へのリンクをクリックします。デプロイメントの詳細が表示されます。
  3. 新しいOracle GoldenGateホーム・ディレクトリの場所でデプロイメントを編集および更新します。
    1. サービス・マネージャの「デプロイメントの詳細」の横にある鉛筆をクリックし、「詳細」タブでOracle GoldenGateホーム・ディレクトリを編集します。
    2. Oracle GoldenGateホーム・パスを新しいOracle GoldenGateホーム・ディレクトリへの完全パスで更新します。
    3. 「適用」をクリックします。
    4. Oracle GoldenGateホーム・パスが更新されたことを確認します。
    5. 「デプロイメント」セクションで「管理サービス」のリンクを選択します。
    6. ログインし、すべてのExtractおよびReplicatを停止します。管理サービス・ページを閉じ、サービス・マネージャ・ページに戻ります。
  4. デプロイメントのデプロイメントの詳細ページに戻り、「構成」タブを選択して環境変数の設定を変更します。Oracle GoldenGate 21cの新しい統合ビルドでは、ORACLE_HOMELD_LIBRARY_PATHおよびTNS_ADMINの環境変数をOracle GoldenGate内のOracle Database Clientソフトウェアに調整する必要があります。環境変数を次のように設定します。
    • ORACLE_HOME = $OGG_HOME/lib/instantclient

    • LD_LIBRARY_PATH = $OGG_HOME/lib:$OGG_HOME/lib/instantclient

    • TNS_ADMIN = tnsnames.oraおよびsqlnet.oraの場所

    • JAVA_HOME = $OGG_HOME/jdk

  5. 変更を保存して、サービス・マネージャの概要ページに戻ります。
  6. 変更を保存して、サービス・マネージャの概要ページに戻ります。
  7. デプロイメントの「アクション」ドロップダウンを選択し、「再開」を選択します。
  8. 「管理サービス」に再度ログインし、ExtractおよびReplicatを起動します。

REST APIを使用したOracle GoldenGate Microservicesのアップグレード

REST APIを使用してOracle GoldenGate MicroservicesをOracle GoldenGate Microservices 21cにアップグレードする方法を説明します。

次の手順に従って、Oracle GoldenGateインストール・ソフトウェアを取得し、アップグレード用にディレクトリを設定します。

  1. Oracle Technology NetworkまたはeDeliveryから最新のOracle GoldenGate Microservices 21cソフトウェアをダウンロードします。

  2. Oracle GoldenGate 21c MAソフトウェアをステージング・フォルダに移動し、解凍します。

    Linuxの場合は、次の例を使用します。

    $ mv /home/user/fbo_ggs_Linux_x64_Oracle_services_shiphome.zip /tmp
    $ cd /tmp$ unzip fbo_ggs_Linux_x64_Oracle_services_shiphome.zip
  3. Oracle GoldenGate Microservices 21cソフトウェアを、以前のリリースのOracle GoldenGate Microservicesが存在しているサーバー上のステージングの場所にアップロードします。

  4. 変更内容を保存してService Managerのホームページに戻ります。

  5. デプロイメントの「アクション」ドロップダウンを選択し、「再開」を選択します。

  6. 「管理サービス」にログインし、「Replicat」セクションの「アクション」ボタンをクリックします。

  7. 「パラメータ・ファイル」タブをクリックし、BATCHSQLパラメータの値をBATCHESPERQUEUEの値の2倍に変更します。Replicatを起動する前にこれを実行する必要があります。たとえば: BATCHSQL BATCHESPERQUEUE 40000000

  8. 「管理サービス」に再度ログインし、ExtractおよびReplicatを起動します。

Service Managerのアップグレード

サービス・マネージャをアップグレードする場合、次のcURLの例を使用してOracle GoldenGateホームを更新できます。

curl -u adminname:adminpwd -X PATCH \
   https://hostname:port/services/v2/deployments/ServiceManager \
  -H 'cache-control: no-cache' \
  -d '{"oggHome":"new OGG_HOME_absolute_path", "status":"restart"}'

この構文では、/u01/app/oracle/product/21c/gghome_1のような、新しいOracle GoldenGateホーム・ディレクトリの絶対パスを入力します。

次のコマンドを使用して、サービス・マネージャが新しい$OGG_HOMEから実行されているかどうかを確認します。
ps -ef|grep -i servicemanager
サービス・マネージャが実行中状態でない場合は、次のコマンドを実行します。
cd $NEW_OGG_HOME/bin
$ ./ServiceManager

デプロイメントのアップグレード

デプロイメントをアップグレードするには、次の手順に従います。
  1. すべてのExtractおよびReplicatプロセスを正常に停止します。
    • Extractの正常な停止に時間がかかる可能性があるため、オープン(長時間実行)トランザクションおよびBounded Recoveryがあるか確認します。

    • 不要なオープン・トランザクション(SEND EXTRACT group_name SHOWTRANSなど)が表示されている場合は、それらのトランザクションをスキップするか、ただちに強制的に停止できます。この場合、次のコマンドを使用してBounded Recoveryチェックポイントを取得できます。

      SEND EXTRACT group_name, BR BRCHECKPOINT immediate

  2. 次の例に示すように、デプロイメントの環境変数を変更します。
    curl -k -u adminname:adminpwd -X PATCH \
    https://server.oracle.com:9000/services/v2/deployments/uat_01 \
    -H 'cache-control: no-cache' \
    -d '{"environment": [ {"name": "ORACLE_HOME" , "value": "/u01/app/oracle/product/21c/gghome_1/lib/instantclient"}
                                     , {"name": "LD_LIBRARY_PATH" , "value": "/u01/app/oracle/product/21c/gghome_1/lib/instantclient:/u01/app/oracle/product/21c/gghome_1/lib"}
                                     , {"name": "JAVA_HOME" , "value": "/u01/app/oracle/product/21c/gghome_1/jdk"}
                                     , {"name": "TNS_ADMIN" , "value": "/u01/app/oracle/network/admin"} ] }'
  3. 次のcURLコマンドを実行して、Oracle GoldenGateデプロイメントをアップグレードします。
     curl -u SM username:SM password -X PATCH 
    http://hostname:servicemanager port/services/v2/deployments/Deployment-name 
    -H 'cache-control: no-cache'
    -d '{"oggHome":"new OGG_HOME complete path","status":"restart"}'
  4. すべてのExtractおよびReplicatを起動します。

サービス・マネージャまたはデプロイメントが再起動すると、アップグレードが完了します。