MySQL5.7的半同步复制

在线切换

在master上执行
mysql>install plugin rpl_semi_sync_master SONAME 'semisync_master.so';
在slave上执行
mysql>install plugin rpl_semi_sync_slave SONAME 'semisync_slave.so';
可以使用show plugins;查看安装成功没有
mysql>set global rpl_semi_sync_master_enabled=1;
mysql>set global rpl_semi_sync_master_timeout=1000;
mysql>set global rpl_semi_sync_slave_enabled=1;
stop slave io_thread;
start slave io_thread;

停机切换

[mysqld]
rpl_semi_sync_master_enabled=1
rpl_semi_sync_master_timeout=1000  #如果超过1秒钟Slave没响应,就会从半同步转向传统复制
rpl_semi_sync_slave_enabled=1

监控

show variables like '%semi%';  #是否开启半同步
show global status like '%semi%';
Rpl_semi_sync_master_no_tx  #这个值是没有经过半同步复制的事物个数
Rpl_semi_sync_master_yes_tx #和上述值意义相反

半同步增加-等待多个Slave的应答

  • Master接收到N个slave的应答后,才commit十五
mysql>set global rpl_semi_sync_master_wait_for_slave_count=N
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 传统复制线程 masterDump_thread slaveIO_ThreadSQL_Thread 纠结的问题My...
    显卡hg阅读 3,474评论 0 0
  • 1.1 资料 ,最好的入门小册子,可以先于一切文档之前看,免费。 作者Antirez的博客,Antirez维护的R...
    JefferyLcm阅读 17,257评论 1 51
  • 重庆·印象 2017/4/13-4/14 重庆之旅
    我也曾经谈起文学阅读 2,515评论 1 1
  • 有多少人能一天不见,就会想你,两天不见,就会担心你,三天不见,就会寻找你! 有多少人每天会默默的翻看你的朋友圈,只...
    花样年华_de37阅读 1,558评论 2 3
  • 【0829今日话题】 8月,在小灶群里,谁是对你影响、帮助最大或者给你带来触动和启发最多的猫友?说说你们的故事吧?...
    鸣鸣嘛嘛依然阅读 2,144评论 3 7

友情链接更多精彩内容