MySQL 5.6搭建半同步复制

  

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

  
 <代码>显示变量如% have_dynamic_loading %的; 
  
 <代码> ls/usr/local/mysql-5.6.38-linux-glibc2.12-x86_64/lib/插件/semisync_ */usr/local/mysql-5.6.38-linux-glibc2.12-x86_64/lib/插件/semisync_master.so/usr/local/mysql-5.6.38-linux-glibc2.12-x86_64/lib/插件/semisync_slave.so  
  

安装软件:

  
 <代码>安装插件rpl_semi_sync_master SONAME semisync_master.so”;
  集全球rpl_semi_sync_master_timeout=60000;  
  从

  
 <代码>安装插件rpl_semi_sync_slave SONAME semisync_slave.so”;
  select * from mysql.plugin;  
  

开启功能
主库

  
 <代码>设定全球rpl_semi_sync_master_enabled=;  
  

从库   

 <代码>设定全球rpl_semi_sync_slave_enabled=;
  停止奴隶io_thread;开始奴隶; 
  

主库:   

 <代码>显示状态像“%半%”; 
  

从库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,要正确使用对应的角色参数。

MySQL 5.6搭建半同步复制