如何配置MySQL SemiSyncReplication
SemiSyncReplication是Google提供的一个MySQL patch,作用在于保证至少有一个slave完成了数据同步。
安装的过程很简单,但是要找对路。这里提供一个传送门,看完就会编译安装了:
http://www.realzyy.com/?p=178
SemiSyncReplication需要的MySQL源码包为mysql-5.0.37.tar.gz;需要的patch为mysql-5.0.37_semisync.patch。其他的patch可以不打,但是如果选择mysql-5.0.37-patches来打补丁的话,那么记得要再打上http://www.realzyy.com/?p=178最后提到的那个小补丁。
配置也很简单,主要是三个参数:
master:
rpl_semi_sync_enabled = 1 #configures a master to use semi-sync replication.
rpl_semi_sync_timeout = 10000000 #the timeout in milliseconds for the master.
slave:
rpl_semi_sync_slave_enabled = 1 #configures a slave to use semi-sync replication. The IO thread must be restarted for this to take effect.
要特别注意rpl_semi_sync_timeout这个参数,官网推荐的设置10太短了。我测试了一下,将slave上的replication线程停掉,master上面执行更新操作并不会出现明显的block现象。如果想让master和slave时时刻刻保证一致,那么rpl_semi_sync_timeout就需要设置得很大,至少在DBA能察觉异常之前,不允许master单方面进行更新操作。
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:DBA@Taobao 来源: DBA@Taobao
- 标签: SemiSyncReplicat
- 发布时间:2010-02-25 22:43:52
-
[1173] WordPress插件开发 -- 在插件使用 -
[71] 解决 nginx 反向代理网页首尾出现神秘字 -
[44] web开发设计人员不可不用的在线web工具和 -
[42] Java开发岗位面试题归类汇总 -
[33] Rax 系列教程(长列表) -
[32] 手机产品设计方向 -
[31] 一句话crontab实现防ssh暴力破解 -
[28] 如何建立合适的索引? -
[27] 程序员疫苗:代码注入 -
[27] oracle技术方面的路线