系统mysql半同步复制"/>
Linux系统mysql半同步复制
接上一博客(主从复制)在同一操作环境下
在主master:
mysql -uroot -pQwer+1234df
mysql> install plugin rpl_semi_sync_master soname 'semisync_master.so';
mysql> show global variables like '%semi%'; ## 查看参数
timeout 10s,超过该时间会转为异步复制,不能保证数据完全同步
表中是以毫秒为单位
mysql> set global rpl_semi_sync_master_enabled=1;
mysql> show global status like '%semi%';
在从slave
mysql -uroot -pQwer+1234dfmysql> install plugin rpl_semi_sync_slave soname 'semisync_slave.so';
mysql> set global rpl_semi_sync_slave_enabled=1;
mysql> show global variables like '%semi%';
-
重启io线程
mysql> stop slave io_thread;
mysql> start slave io_thread;
测试:
master:删除数据库内容看slave是否同步
mysql> delete from info where username='user1';
mysql> select * from westos.info;
slave:数据库内的user1已经删除,表示同步过来了
mysql> select * from westos.info;
master:可以看到参数有变化
mysql> show global status like '%semi%';
延时测试:
在slave:
mysql> stop slave io_thread; ## 关掉io线程
在master:
mysql> use westos
mysql> insert into info values('user2','222'); ## 命令产生了10秒延时,变成异步传输
在slave:
mysql> select * from westos.info;
打开IO线程前
在slave:
mysql> start slave io_thread; ## 重新打开IO线程
mysql> select * from haha.info;
更多推荐
Linux系统mysql半同步复制
发布评论