数据库
首页 > 数据库> > mysql架构篇之复制模式

mysql架构篇之复制模式

作者:互联网

Mysql的复制模式介绍:

  *异步复制

  主服务器执行完一次事务后,立即将结果返回给客户端,不关心从服务器是否已经同步数据。

  *半同步复制

  介于异步复制与同步复制之间

  主服务器在执行完一次事务后,等待至少一台从服务器同步数据完成,才将结果返回给客户端

 

Mysql默认异步复制:

 

 

开启半同步复制:

  1:查看是否允许动态加载模块(默认允许)

    show variables like 'have_dynamic_loading';

    

 

   2:命令行加载插件:

    

install plugin rpl_semi_sync_master SONAME "semisync_master.so";
    //主服务器上执行
install plugin rpl_semi_sync_slave SONAME "semisync_slave.so";
    //从服务器上执行
select plugin_name,plugin_status from information_schema.plugins where plugin_name like "%semi%";
    //查看

 

 

 

模式配置:

启用半同步复制

  半同步复制,默认是关闭的

  

set global rpl_semi_sync_master_enabled=1;
show variables like "rpl_semi_sync_%_enabled";

 

 

此上的方式,只是临时的。

 

永久启用半同步复制

修改主配置文件/etc/my.cnf

在[mysqld]下方添加

主服务器
plugin-load=rpl_semi_sync_master=semisync+master.so rpl_semi_sync_master_enabled=1

从服务器
plugin-load=rpl_semi_sync_slave=semisync_slave.so
rpl_semi_sync_slave_enabled=1

 

如果该主机属于Master又属于Slave时

需同时启用

plugin-load=rpl_semi_sync_master=semisync+master.so;plugin-load=rpl_semi_sync_master=semisync+slave.so
rpl_semi_sync_master_enabled=1

rpl_semi_sync_slave_enabled=1
 

 

标签:架构,semi,plugin,sync,复制,master,mysql,rpl
来源: https://www.cnblogs.com/ahaocloud/p/14696469.html