mysql 5.7 gtid 主从复制
GTID中slave端的binlog是必须开启的,目的是记录执行过的GTID
主库
#开启gtid
log-bin=mysql-bin
expire_logs_days = 5
binlog_format=row
server-id = 1
gtid_mode=on
enforce_gtid_consistency=true
log_slave_updates=on
master_info_repository=table
relay_log_info_repository=table
#授权从库复制账号
CREATE USER 'repl'@'%.example.com' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%.example.com';
从库:
#开启gtid
log-bin=mysql-bin
expire_logs_days = 5
binlog_format=row
server-id = 2
gtid_mode=on
enforce_gtid_consistency=true
log_slave_updates=on
master_info_repository=table
relay_log_info_repository=table
#从库配置连接主库
change master to master_host="主库IP",master_port=3306,MASTER_USER='repl',MASTER_PASSWORD='123456',MASTER_AUTO_POSITION=1;
#非gtid的复制
#change master to master_host="10.99.99.128",master_port=3308,MASTER_USER='repl',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000002',MASTER_LOG_POS=40783;
flush privileges;
show slave status\G
#查看连接主库的配置
select * from mysql.slave_master_info;