主库配置
[mysqld]
log_bin = /path/mysql/master/data/log_bin
gtid_mode = ON
enforce-gtid-consistency = true
log_slave_updates = 1
basedir = /usr/local/Cellar/mysql/5.7.17
datadir = /path/mysql/master/data
port = 3306
server_id = 13306
socket = mysql.sock
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
从库配置
[mysqld]
log_bin = /path/mysql/slave/data/log_bin
relay_log = /path/mysql/slave/data/relay_log
relay-log-index = /path/mysql/slave/data/relay-log-index
relay-log-info-file = /path/mysql/slave/data/relay-relay-log.info
replicate-do-db = test
log_slave_updates = 1
gtid_mode = ON
enforce-gtid-consistency = true
datadir = /Users/Aim/mysql/slave/data
port = 3307
server_id = 13307
socket = mysql.sock
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
查看是否成功开启GTID同步,Command显示Binlog Dump GTID表示成功开启GTID同步。
mysql> SHOW PROCESSLIST \G
*************************** 1. row ***************************
Id: 3
User: root
Host: localhost:62976
db: NULL
Command: Binlog Dump GTID
Time: 267
State: Master has sent all binlog to slave; waiting for more updates
Info: NULL
*************************** 2. row ***************************
Id: 6
User: root
Host: localhost:63016
db: NULL
Command: Query
Time: 0
State: starting
Info: SHOW PROCESSLIST
2 rows in set (0.00 sec)
更多架构、PHP、GO相关踩坑实践技巧请关注我的公众号:PHP架构师