Mysql 主从复制机制
时间:2021-07-01 10:21:17
帮助过:4人阅读
192.168.17.133 node1
192.168.17.134 node2
192.168.17.135 node3
2、编辑/etc/my.cnf配置参数(三个节点按照如下设置)
-
log-bin = /data/mysql57/binlog/mysql-bin
-
binlog_format = ROW
-
sync_binlog = 1
-
binlog_checksum = NONE
-
log_slave_updates = 1
-
gtid_mode = ON
-
enforce_gtid_consistency = ON
-
master_info_repository = TABLE
-
relay_log_info_repository = TABLE
3、安装插件
INSTALL PLUGIN group_replication SONAME ‘group_replication.so‘;
4、设置集群参数(三个节点都执行)
注:group_replication_group_name名字要通过select uuid()来生成
group_replication_local_address在节点2和节点3上改成本地IP地址
执行完了,别忘了修改my.cnf里加入到配置文件里。
5、节点加入集群
Primary节点上执行
注:待replication_group_members表查询结果MEMBER_STATE字段状态为ONLINE,再执行关闭初始化。
两台Secondary上执行
-
SET SQL_LOG_BIN=0;
-
GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO ‘repl‘@‘%‘ IDENTIFIED BY ‘repl‘;
-
FLUSH PRIVILEGES;
-
SET SQL_LOG_BIN=1;
-
CHANGE MASTER TO MASTER_USER=‘repl‘,
-
MASTER_PASSWORD=‘repl‘ FOR CHANNEL
-
‘group_replication_recovery‘;
-
START GROUP_REPLICATION;
-
select * from performance_schema.replication_group_members;
如下图所示,代表集群已经成功运行。
4、Group Replication的维护
假如Secondary节点宕机,重启后由于种种原因加入集群失败,现需要重新恢复,步骤如下:
1、在另一台Secondary节点上mysqldump全量
-
mysqldump -uroot -p123456 -q
-
这一步会自动在yourDB.sql里生成
SET @@GLOBAL.GTID_PURGED=‘23e510dc-d30b-11e6-a4c6-b82a72d18b06:1,4d1fd6ec-d2fd-11e6-ae4b-549f3503ab31:1-1543112:2003786-2003789:3003787,e4e34dd3-d2fa-11e6-984b-b82a72d18b06:1‘;
2、导入进去
再执行下面的语句即可
-
CHANGE MASTER TO MASTER_USER=‘repl‘,
-
MASTER_PASSWORD=‘repl‘ FOR CHANNEL
-
‘group_replication_recovery‘;
-
START GROUP_REPLICATION;
Mysql 主从复制机制
标签:word client grant 文件 注意事项 none 参数 ali 隔离