デフォルト動作の変更

この項では、最新リリースに関してOracle GoldenGateのデフォルト動作の変更について説明します。

リリース19.1 (19.29.0.0.251021) - 2025年10月

バグ37909236: MariaDB - MariaDBのbinlog_annotate_row_events=OFFの要件を削除する

このバージョンのOracle GoldenGate以降、MariaDBのbinlog_annotate_row_eventsOFFに設定する要件は削除されました。

リリース19.1 (19.28.0.0.250715) - 2025年8月

バグ37757820: 一般 - Oracle Database以外のすべてのデータベースでBATCHSQLのデフォルトとしてNOCHECKUNIQUEKEYSを有効化

Oracle以外のすべてのデータベースで、BATCHSQLのデフォルトとしてNOCHECKUNIQUEKEYSを有効にしました。

リリース19c (19.27) - 2025年5月

バグ37576949: 汎用- 新しい統合Replicat (IR)にはチェックポイント表が必要

Oracle GoldenGateでは、統合Replicatの作成時にチェックポイント表が必要になります。

既存の統合Replicatは再構築して、チェックポイント表を含める必要があります。NODBCHECKPOINTで作成された既存のReplicatプロセスには、ALTER REPLICATコマンドを使用してチェックポイント表を追加することはできません。

リリース 19.25.0.0.241015 - 2024年10月

Oracle GoldenGateウォレットのセキュリティ更新
Oracle GoldenGateウォレットから自動ログイン・プロパティが削除されました

資格証明情報を格納するOracle GoldenGateウォレット(Microservicesユーザーのログイン情報)のセキュリティを強化するために、Oracle GoldenGateウォレットの自動ログイン・プロパティが削除されました。

そのため、デプロイメントがOracle GoldenGateリリース19.25以上にパッチが適用されて起動された後、19.24以下の以前のOracle GoldenGateリリースにロールバックすると、パスワードで保護されたウォレットを自動的に自動ログイン・ウォレットに変換できないため、実行できません。

Oracle GoldenGateリリース19.25以上にパッチを適用する前にウォレットに格納されていた情報を取得するための短期的な回避策は、以前のバージョンから自動ログイン・ウォレットを保存し、ロールバック時にこれらのウォレットを手動でリストアすることです。

リリース19.1.0.0.230418 - 2023年4月

Oracle
Oracle用のJDKにバンドルされているOpatch

JDKは、リリース・バージョン21.10および19.1.0.0.230418以降のOracle GoldenGateパッチにパッケージ化されました。<GG_HOME>/jdkディレクトリのみがGoldenGateパッチ・リリースで更新されることに注意してください。GoldenGateパッチによって、または個別でJDKを更新するための詳細および追加参照は、ドキュメントID 2359395.1を参照してください。

最新のJDKパッチを<GG_HOME>/jdkディレクトリにいつでも個別にインストールするオプションもあります。詳細は、ドキュメントID 1492980.1を参照してください。

リリース19.1.0.0.200714 - 2020年9月

PostgreSQL
データの指定中はパラメータTransactionErrorBehaviorを2に設定する必要がある
PostgreSQL Replicatがデータベース・エラー条件を適切に処理できるようにするには、パラメータTransactionErrorBehaviorの値を2に設定する必要があります。これはOracle GoldenGateの必須パラメータで、DSNの下のodbc.iniファイル内で指定する必要があります。パラメータを指定するDSNの例を次に示します。
[ODBC]
IANAAppCodePage=4
InstallDir=/u01/ggate

[pgdsn]
Driver=/u01/ggate/lib/GGpsql25.so
Description=DataDirect 7.1 PostgreSQL Wire Protocol
Database=mypgdb
HostName=mypghost
PortNumber=5432
LogonID=mypguser
Password=**********
TransactionErrorBehavior=2

詳細は、https://media.datadirect.com/download/docs/odbc/allodbc/index.html#page/odbc/transaction-error-behavior.htmlを参照してください

リリース19c (19.1.0.0.200714) - 2020年7月

PostgreSQL
DEFERAPPLYINTERVALがPostgreSQL Replicatで予期されたとおりに機能しない

タイムゾーンがデータベースとオペレーティング・システムで同じでない場合、Replicatはソース・システムのローカルGMT時間がレコード・コミット・タイムスタンプ+ DEFERAPPLYINTERVAL遅延を超えるまで待機します。

Replicatの再起動後に大/小文字の両方で作成された場合、Replicatでチェックポイント表を識別できない

チェックポイント表名は、引用符なしの小文字にして、特殊文字を含めないでください。

リリース19c (19.1.0) - 2020年5月

Oracle GoldenGateホーム・ディレクトリ名にスペースがある場合、Oracle GoldenGate Configuration Assistantが実行されない

Oracle GoldenGateホームのディレクトリ名またはOGG_HOMEにスペースがある場合(OGG HOMEなど)、WindowsでOracle GoldenGate Configuration Assistant (OGGCA)が実行されません。

リリース19c (19.1.0) - 2019年9月

INFO HEARTBEATTABLE

SQL Serverに対するINFO HEARTBEATTABLEコマンドで、ハートビート頻度間隔、パージ頻度間隔および保存時間がレポートされるようになりました。

TRANLOGOPTION QUERYTIMEOUTのデフォルト値

SQL Serverでは、デフォルトのQUERYTIMEOUTが30秒から300秒に拡張されました。

DDL変更後の検証の追加

SQL ServerのExtractは、ソース表とチェンジ・データ・キャプチャ表の間で表構造の差異を検出すると、異常終了します。

TLS 1.2接続のサポート

SQL Serverでは、TLS 1.2接続のサポート(有効になっている場合)が、ExtractおよびReplicatによって自動的に提供されます。

MySQLでOracle GoldenGate 19cを使用するための前提条件

Oracle GoldenGate for MySQLにはOpenSSLライブラリに対する依存関係があるため、OpenSSLライブラリを使用できることが前提条件になります。

Linux: OpenSSLライブラリがインストールされているパスを含むようにLD_LIBRARY_PATHを設定します。

Windows: MySQL 8.0以上では、OpenSSLライブラリはMySQLサーバーに同梱され、MySQLホーム・ディレクトリの\binディレクトリに格納されています。OpenSSLの場所がパス環境変数に追加されていることを確認する必要があります。

たとえば、D:\path\to\MySQLServer_install_dir\binディレクトリをPATH環境変数に追加する必要があります。

また、OpenSSLライブラリを含む最新のMySQL C++コネクタ(MySQL 8.0以上)をインストールして、OpenSSLの場所がパス環境変数に追加されるようにできます。たとえば、C:\Program Files\MySQL\Connector C++ 8.0\lib64ディレクトリをPATH環境変数に追加する必要があります。

MySQL 5.7以下では、OpenSSLライブラリを含む最新のMySQL C++コネクタ(MySQL 8.0以上)をインストールして、OpenSSLの場所がPATH環境変数に追加されるようにする必要があります。たとえば、C:\Program Files\MySQL\Connector C++ 8.0\lib64ディレクトリをPATH環境変数に追加する必要があります。

Oracle GoldenGate for MySQL 8.0にはOpenSSLライブラリに対する依存関係があるため、このライブラリを使用できることが前提条件になります。ライブラリがOracle GoldenGateを実行しているシステムにインストールされていて、このライブラリへのパスが適切に設定されていることを確認する必要があります。

Oracle GoldenGateユーザー名にパターン制限はありませんが、最大長は512文字です。

Oracle GoldenGateユーザー名の制約はなくなりましたが、最大長は512文字です。基本タイプおよび証明書タイプのユーザーの場合は、REST APIでユーザー名に使用する特殊文字について制約はありません。

ただし、基本タイプのユーザーの場合は、Microservice ArchitectureのWebインタフェースでユーザー名に使用できる特殊文字は限定されています。これらの文字を次に示します:

アットマーク(@)、ピリオド(.)、ダッシュ(-)、カンマ(,)、アンダースコア(_)、番号記号(#)、ドル記号($)、プラス記号(+)、バックスラッシュ(\)、スラッシュ(/)、等号(=)、小なり記号(<)または大なり記号(>)。

リリース19c (19.1.0) - 2019年5月初期リリース

Microservicesの実装に強力なパスワードが必要
Microservices実装のユーザーのパスワードには、大文字、数字および特殊文字を使用したより強力なパスワードが必要です。
証跡ファイル形式

Extractの更新後、新しい証跡ファイル形式を指定すると、プライマリExtractは指定した証跡ファイル形式の次の証跡ファイルおよびライターに自動的にロールオーバーされます。ALTER EXTRACT ETROLLOVERコマンドを実行する必要はありません。

Extractのデフォルトの証跡ファイルのバージョン
FORMAT RELEASEオプションを使用して証跡ファイル形式のバージョンを明示的に指定しない場合、プライマリExtractは、Oracle GoldenGate 19cにアップグレードするときに、証跡ファイルを既存の証跡ファイル形式と同じ形式で書き込みます。この動作変更により、Replicatがアップグレードされない場合に以降のReplicatが異常終了することが回避されます。
_INFINITYTOZEROパラメータが不要になった
_INFINITYTOZEROパラメータは不要になりました。Oracle GoldenGateによってOracle数値フィールドで+INFまたは-INFの値が検出されると、その値はこのパラメータがすでに設定されているかのように自動的に処理されます。

ターゲットがOracle Replicat 19cリリースの場合、+INFおよび-INFは適切に適用されます。他のすべてのデータベース(古いOracle Replicatを含む)では、0値が適用されます。

Oracle TIMESTAMP WITH TIME ZONEのキャプチャ
リージョンIDデータを含むTIMEZONEを持つTIMESTAMPは、現在FETCHおよび初期ロードでサポートされます。詳細は、Oracle GoldenGateリファレンスTRANLOGOPTIONSを参照してください

この機能は必要に応じて自動的に有効になるため、TRANLOGOPTIONS INCLUDEREGIONIDを指定する必要はありません。Oracle以外のターゲットでは、TRANLOGOPTIONS INCLUDEREGIONIDWITHOFFSETを使用してリージョンIDをUTCとの時間オフセットに変換します。

GETCTASDMLオプションのデフォルト設定
TRANLOGOPTIONSパラメータで使用可能なGETCTASDMLオプションは、デフォルトで有効になります。
NOALLOWNULLABLEKEYSのデフォルト設定
デフォルト設定では、NOALLOWNULLABLEKEYSパラメータはtrueに設定されます。

この機能は、キー列に複数のNULL値が許可されているために問題になりそうな表を、カスタマが簡単に識別できるように作成されました。

Binlog形式のサポートの変更

(MySQLのみ)キャプチャでは、ROW以外のbinlog_formatが検出されたときに、異常終了するのではなく、ROW形式で書き込まれていないbinlogイベントが暗黙的に無視されます。