半同步复制实战

主库配置修改

登录MySQL

查看功能

//查看是否能使用动态插件的安装 select @@have_dynamic_loading; //查看插件有哪些 show plugins;

安装插件

install plugin rpl_semi_sync_master soname ‘semisync_master.so’;

开启插件

show variables like ‘%semi%’; //开启插件 set global rpl_semi_sync_master_enabled=1; //设置成1秒钟 set global rpl_semi_sync_master_timeout=1000;

从库修改

登录MySQL

安装插件

install plugin rpl_semi_sync_slave soname ‘semisync_slave.so’;

开启插件

set global rpl_semi_sync_slave_enabled=1;

重启slave

stop slave; start slave;

并行复制

主库配置

设置参数

show variables like ‘%binlog_group%’; set global binlog_group_commit_sync_delay=1000; set global binlog_group_commit_sync_no_delay_count=100;

从库配置

show variables like ‘%slave%’;

配置修改

修改/etc/my.cnf,注意set命令不起作用

stop slave; relay_log_recovery=1 slave_parallel_type=LOGICAL_CLOCK //设置线程数 slave-parallel-workers=8 master_info_repository=TABLE

relay_log_info_repository=TABLE

重启MySQL

systemctl restart mysqld //查看配置信息 show variables like ‘%relay_log%’;