创新路
我们一直在努力

Mysql之三种主从同步复制模式

mysql主从同步复制模式

    1.异步复制   :主库在执行完客户端提交的事务后会立即将结果返给客户端,并不关心从库是否已经接收并处理。(默认模式)

    2.全同步复制 :当主库执行完一个事务,所有的从库都执行了该事务才返回给客户端。

    3.半同步复制 :介于异步复制和全同步复制之间,主库在执行完客户端提交的事务后不是立刻返回给客户端,而是等待至少一个从库接收到并写到 relay log 中才返回给客户端

 

    mysql> show variables like  "have_dynamic_loading";    

    //查看是否可以动态加载模块(默认允许)

    mysql> install plugin  rpl_semi_sync_master  soname  'semisync_master.so';  

    //主库安装模块,用户需有 super 权限

    mysql> install plugin  rpl_semi_sync_slave  soname  'semisync_slave.so';    

    //从库安装模块,用户需有 super 权限

    查看系统库下的表,模块是否安装成功

    select plugin_name,plugin_status from information_schema.plugins where plugin_name like '%semi%';

 

    启用半同步复制模式(默认关闭)

    主库:mysql> set global  rpl_semi_sync_master_enabled = 1;

    从库:mysql> set global  rpl_semi_sync_slave_enabled = 1;

    mysql>  show  variables  like  "rpl_semi_sync_%_enabled";   //查看半同步复制模式是否启用

 

    修改配置文件/etc/my.cnf 让安装模块和启用的模式永久生效。

    主库

        vim /etc/my.cnf

        [mysqld]

        plugin-load=rpl_semi_sync_master=semisync_master.so

        rpl_semi_sync_master_enabled=1

 

    从库

        vim /etc/my.cnf

        [mysqld]

        plugin-load=rpl_semi_sync_slave=semisync_slave.so

        rpl_semi_sync_slave_enabled=1

 

    既做主又做从

        vim /etc/my.cnf

        [mysqld]

        plugin-load = "rpl_semi_sync_master=semisync_master.so;rpl_semi_sync_slave=semisync_slave.so"

        rpl-semi-sync-master-enabled = 1

        rpl-semi-sync-slave-enabled = 1

未经允许不得转载:天府数据港官方信息博客 » Mysql之三种主从同步复制模式

客官点个赞呗! (0)
分享到:

评论 抢沙发

评论前必须登录!

天府云博 - 做有态度的开发&运维&设计学习分享平台!

联系我们百度云主机