mysql中怎么设置半同步复制,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
 
在主、从上安装和开启半同步插件
mysql> install plugin rpl_semi_sync_master soname 'semisync_master.so';
 
Query OK, 0 rows affected (0.02 sec)
 
mysql> set global rpl_semi_sync_master_enabled=on;
 
在主、从上检查是否安装成功
mysql> show variables like '%semi%';
 
+-------------------------------------------+------------+
 
| Variable_name | Value |
 
+-------------------------------------------+------------+
 
| rpl_semi_sync_master_enabled | OFF |
 
| rpl_semi_sync_master_timeout | 10000 |
 
| rpl_semi_sync_master_trace_level | 32 |
 
| rpl_semi_sync_master_wait_for_slave_count | 1 |
 
| rpl_semi_sync_master_wait_no_slave | ON |
 
| rpl_semi_sync_master_wait_point | AFTER_SYNC |
 
+-------------------------------------------+------------+
 
6 rows in set (0.00 sec)
 
相关参数解释
rpl_semi_sync_master_enabled ##设置为on表示开启了半同步功能
 
rpl_semi_sync_master_timeout ##单位是毫秒,表示如果主库等待从库回复消息的时间超过该值,就自动切换为异步复制模式
 
rpl_semi_sync_master_wait_for_slave_count ##它控制主库接收多少个从库写事务成功反馈,才返回成功给客户端
 
rpl_semi_sync_master_wait_point ##默认值是AFTER_SYNC,含义是主库将每个事务写入binlog,并传递给从库,刷新到中继日志,主库开始等待从库的反馈,接收到从库的回复之后,再提交事务并且返回“commit ok”结果给客户端
 
重启从库的io线程让设置生效
stop slave io_thread;
 
start slave io_thread;
 
看完上述内容,你们掌握mysql中怎么设置半同步复制的方法了吗?

dawei

【声明】:达州站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。