mysql主从复制中的半同步复制

实验mysql借助google提供的插件,完成半同步复制模型;


物理机依然是win7系统,虚拟机为centos7;

主节点:192.168.255.2

从节点:192.168.255.3


先配置为主从复制模型:

在主节点:

]# vim /etc/my.cnf

mysql主从复制中的半同步复制


从节点:

]# vim /etc/my.cnf

mysql主从复制中的半同步复制


启动两节点的myslq服务:

]# systemctl start mariadb.service


在主节点:

配置有复制权限的账号:

> GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'repluser'@'192.168.255.%' IDENTIFIED BY 'replpass';

> FLUSH PRIVILEGES;


注意:如果从服务器也打算创建这个有复制权限的账号,要先启用主从设置后,再执行此命令:


查看二进制日志事务的位置:

mysql主从复制中的半同步复制


在从节点:

设置同步位置:

> CHANGE MASTER TO MASTER_HOST='192.168.255.2',MASTER_USER='repluser',MASTER_PASSWORD='replpass',MASTER_LOG_FILE='master-bin.000003',MASTER_LOG_POS=499;


主从复制配置完成;


分别在主从节点上安装相应的插件:


在主节点:

> INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';

mysql主从复制中的半同步复制


启用为半同步的主节点:

> SET GLOBAL rpl_semi_sync_master_enabled=1;



从节点:

安装从节点插件:

> INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';

mysql主从复制中的半同步复制


启用为半同步从节点

> SET GLOBAL rpl_semi_sync_slave_enabled=on;


启动从节点同步:

> START SLAVE;

确保从节点的线程正常启动:

mysql主从复制中的半同步复制


此时,mysql主从复制的半同步配置完成;可演示验证;


在主节点:

创建新库后并查看相关参数值:

mysql主从复制中的半同步复制

其中Rpl_semi_sync_master_clients:对于当前主节点,有多少个半同步节点;值为1表示有一个半同步节点;


从节点查看:

mysql主从复制中的半同步复制

以上演示的就是半同步复制的配置过程。











本文转自 crystaleone 51CTO博客,原文链接:http://blog.51cto.com/linsj/1787601,如需转载请自行联系原作者
上一篇:Android 开发第一弹:倒计时


下一篇:PostgreSQL 10.0 preview 功能增强 - 回滚范围可精细控制(事务、语句级)