6 Installing Oracle GoldenGate for MySQL Databases

Learn about the requirements and how to install Oracle GoldenGate for MySQL databases.

Topics:

Supported Databases

Oracle GoldenGate for MySQL supports capture and delivery for MySQL, Amazon Aurora MySQL, Amazon RDS for MariaDB, Amazon RDS for MySQL, Azure Database for MySQL, and MariaDB.

Note:

  • Amazon RDS for MariaDB and MariaDB 10.4 are supported starting with bundle patch 19.1.0.0.200714.

  • Azure Database for MySQL is supported starting with bundle patch 19.1.0.0.200414.

For supported database versions, review the certification matrix available at:

https://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html

DDL replication is only supported for local capture on MySQL 5.7.10 and greater.

Limitations of Support

Following are the limitations of support for Oracle GoldenGate for MySQL:
  • MySQL databases enabled with binary log transaction compression are not supported with Oracle GoldenGate Extract.

  • MySQL databases enabled with binary log encryption are not supported with Oracle GoldenGate Extract.

Database Storage Engine

Requirements for the database storage engine are as follows:

  • Oracle GoldenGate supports the InnoDB storage engine for a source MySQL database.

  • On a target MySQL database, the Oracle GoldenGate Replicat process connects to the database through the MySQL native API.

Database Character Set

MySQL provides a facility that allows users to specify different character sets at different levels.

Level Example

Database

create database test charset utf8;

Table

create table test( id int, name char(100)) charset utf8;

Column

create table test ( id int, name1 char(100) charset gbk, name2 char(100) charset utf8));

Limitations of Support

  • When you specify the character set of your database as utf8mb4/utf8, the default collation is utf8mb4_unicode_ci/utf8_general_ci. If you specify collation_server=utf8mb4_bin, the database interprets the data as binary. For example, specifying the CHAR column length as four means that the byte length returned is 16 (for utf8mb4) though when you try to insert data more than four bytes the target database warns that the data is too long. This is the limitation of database so Oracle GoldenGate does not support binary collation. To overcome this issue, specify collation_server=utf8mb4_bin when the character set is utf8mb4 and collation_server=utf8_bin for UTF-8.

  • The following character sets are not supported:

    • armscii8
    • keybcs2
    • utf16le
    • geostd8

Other Programs and Settings for MySQL

Oracle GoldenGate 19c for MySQL is packaged with MySQL client libraries 8.0.17 and requires OpenSSL 1.1.1 be installed on the Oracle GoldenGate server.

  • If Oracle GoldenGate is installed on a MySQL 8.0 (versions less than 8.0.34) database server, then add the MySQL installation’s home\bin directory to the PATH or LD_LIBRARY_PATH environment variable as shown.

    For Linux:

    export LD_LIBRARY_PATH=mysql_home/bin:$PATH

    For Windows:

    set PATH=mysql_home\bin;%PATH%
  • If Oracle GoldenGate is installed on a MySQL (versions 5.6, 5.7, 8.0.34+) or MariaDB database server, or installed on a hub server, then install OpenSSL 1.1.1 and add its installation location to the PATH or LD_LIBRARY_PATH environment variable.

This is required for both Linux and Windows systems and the environment variable must include the directory containing the following files:
  • libssl.so.10 and libcrypto.so.10 files for Linux systems

  • libcrypto-1_1-x64.dll and libssl-1_1-x64.dll files for Windows systems

OpenSSL 1.1.1 binaries are available through openssl.org or by installing a MySQL 8.0 product that includes the OpenSSL 1.1.1 libraries, such as Connector/ODBC 8.0 version 8.0.33.

Installing for MySQL

Install Oracle GoldenGate for your MySQL system, see Installing for all Platforms.