Using MySQL 8.0 with Gateway 10
MySQL 8.0 is required for Gateway version 10.0+. This section helps you understand the overall process to install or upgrade to Gateway 10.0 and configure MySQL 8.0 server. The links provided in this process refer to detailed documentation and the MySQL 8.0 specific-instructions are listed again in this section for your quick reference.
Update to the Sample Docker Compose Deployment File
The sample docker-compose.yml file includes the following in the
# command: # - "--character-set-server=utf8mb3" # - "--innodb_log_buffer_size=32M" # - "--innodb_log_file_size=80M" # - "--max_allowed_packet=20M" # - "--log-bin-trust-function-creators=1 # - "--default-authentication-plugin=mysql_native_password"
Ensure that you have the following lines under
mysql-serversection in the docker-compose.yml file to successfully run Container Gateway with MySQL 8.0:
# - "--character-set-server=utf8mb3" # - "--log-bin-trust-function-creators=1" [or] - "--disable-log-bin" # - "--default-authentication-plugin=mysql_native_password"
Manage JDBC Connections
To update details of a JDBC connection, edit the JDBC connection properties and specify the following parameter in the
JDBC URLfield to allow the public key retrieval from the server for securing the password transportation between client and server:
If you have already created users in MySQL, add the following line in
/etc/my.cnfof MySQL server, restart MySQL, and then recreate the users:
If you need to create users in MySQL, add the above line in
/etc/my.cnfof MySQL server, restart MySQL, and then create the users.
Known Issue: MySQL 8.0 Upgrade from 9.4 to 10.0
Issue:MySQL 8.0 removed NO_AUTO_CREATE_USER SQL mode(MySQL issue). When we take a backup from MySQL 5.7 and upgrade to MySQL 8.0, we get an issue related to 'sql_mode' that can't be set to the value of 'NO_AUTO_CREATE_USER'.
Workaround:Use the following command to remove 'NO_AUTO_CREATE_USER' in dump file by simple space:
sed -i "s/NO_AUTO_CREATE_USER//g" mysql_dump.sql
More Information:Clone Replication Slave From Live Master Using GTID and mysqldump