6 MySQLデータベースのためのOracle GoldenGateのインストール
MySQLデータベース用にOracle GoldenGateをインストールするための要件と方法について学習します。
トピック:
サポートされるデータベース
ノート:
-
Amazon RDS for MariaDBおよびMariaDB 10.4は、バンドル・パッチ19.1.0.0.200714以降でサポートされています。
-
Azure Database for MySQLは、バンドル・パッチ19.1.0.0.200414以降でサポートされています。
サポートされているデータベース・バージョンについては、次の場所にある動作保証マトリックスを確認してください。
https://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html
DDLレプリケーションは、MySQL 5.7.10以降でのローカル取得に対してサポートされます。
サポートの制限事項
-
バイナリ・ログ・トランザクション圧縮で有効になっているMySQLデータベースは、Oracle GoldenGate Extractではサポートされていません。
-
バイナリ・ログ暗号化で有効になっているMySQLデータベースは、Oracle GoldenGate Extractではサポートされていません。
親トピック: サポートされているデータベース
データベース・ストレージ・エンジン
データベース・ストレージ・エンジンの要件は次のとおりです。
-
Oracle GoldenGateでは、ソースMySQLデータベース用にInnoDBストレージ・エンジンがサポートされます。
-
ターゲットMySQLデータベースでは、Oracle GoldenGate ReplicatプロセスはMySQLネイティブAPIを介してデータベースに接続します。
データベース文字セット
MySQLには、ユーザーが異なるレベルで異なる文字セットを指定できる機能があります。
レベル | 例 |
---|---|
データベース |
create database test charset utf8; |
表 |
create table test( id int, name char(100)) charset utf8; |
列 |
create table test ( id int, name1 char(100) charset gbk, name2 char(100) charset utf8)); |
サポートの制限事項
-
データベースの文字セットをutf8mb4/utf8に指定すると、デフォルトの照合は
utf8mb4_unicode_ci
/utf8_general_ci
になります。collation_server=utf8mb4_bin
を指定すると、データベースはデータをバイナリとして解釈します。たとえば、CHAR
列の長さを4に指定した場合、4バイトを超えるデータを挿入しようとすると、データが長すぎることがターゲット・データベースから警告されますが、返されるバイト長は16 (utf8mb4
の場合)になります。これはデータベースの制限のため、Oracle GoldenGateではバイナリ照合をサポートしていません。この問題を解決するには、文字セットがutf8mb4およびcollation_server=utf8_bin
(UTF-8)に設定されている場合に、collation_server=utf8mb4_bin
を指定します。 -
次の文字セットはサポートされていません。
armscii8
keybcs2
utf16le
geostd8
MySQL用のその他のプログラムおよび設定
Oracle GoldenGate 19cからは、OpenSSL共有ライブラリが必要であり、インストールされている必要があります。Oracle GoldenGateを使用してMySQL 8.0から抽出する場合で、Oracle GoldenGateがローカル・データベース・サーバーにインストールされている場合、次のようにMySQLインストール・パスをPATH
変数に追加する必要があります。
Windowsの場合:
PATH=MYSQL_HOME\bin;%PATH%
Linuxの場合:
export PATH=MYSQL_HOME/bin:$PATH
MySQL 5.7以前から抽出するようにOracle GoldenGateを設定する必要がある場合、またはOracle GoldenGateをリモート・サーバーにインストールする場合は、OpenSSLをインストールし、そのインストール場所をPATH
変数に追加する必要があります。これはLinuxとWindowsの両方で必要です。