欢迎光临
我们一直在努力

MySQL 5.6 搭建半同步复制

确定是否可以动态安装插件

show variables like '%have_dynamic_loading%';
ls /usr/local/mysql-5.6.38-linux-glibc2.12-x86_64/lib/plugin/semisync_*
/usr/local/mysql-5.6.38-linux-glibc2.12-x86_64/lib/plugin/semisync_master.so
/usr/local/mysql-5.6.38-linux-glibc2.12-x86_64/lib/plugin/semisync_slave.so

安装软件:

install plugin rpl_semi_sync_master SONAME 'semisync_master.so';
set global rpl_semi_sync_master_timeout=60000;

install plugin rpl_semi_sync_slave SONAME 'semisync_slave.so';
select * from mysql.plugin;

开启功能
主库

set global rpl_semi_sync_master_enabled=on;

从库

set global rpl_semi_sync_slave_enabled=on;
stop slave io_thread;start slave;

主库:

show status like '%semi%';

从库io_thread正常情况下,复制延迟对于半同步没影响。

配置文件增加选项:

rpl_semi_sync_master_enabled=1
rpl_semi_sync_master_timeout=60000

rpl_semi_sync_slave_enabled=1

注意:
1.去掉半同步复制,半同步复制会造成一些语句不适用,影响主从进程。
2.主库不要打开rpl_semi_sync_slave_enabled,从库不要打开rpl_semi_sync_master_enabled,要正确使用对应的角色参数。

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。