这两周时间比较充裕寻求研究一种mysql高可用解决方案,比如在去年的一些项目中发现跨机房网络不稳定性或者抖动带来mysql 主从异常、数据不一致等。看了网上很多关于不同地域间数据库一致性的解决方案,最好想尝试使用tungsten试试效果。
实验环境介绍:
centos 6.4 两台
mysql 5.5.33
java version "1.6.0_45"
tungsten-replicator-2.2.0-292.tar.gz
安装tungsten 参见:http://code.google.com/p/tungsten-toolbox/
安装完成验证tungsten 状态:
[root@master95 ~]# /opt/tungsten-replicator-2.2.0-292/cookbook/trepctl -host master95 services Processing services command... NAME VALUE ---- ----- appliedLastSeqno: 27 appliedLatency : 0.658 role : master serviceName : alpha serviceType : local started : true state : ONLINE NAME VALUE ---- ----- appliedLastSeqno: 26 appliedLatency : 0.0 role : slave serviceName : bravo serviceType : remote started : true state : ONLINE Finished services command...
测试:
在一端创建数据库,创建表,插入数据,------>另一端立马看到
停止一个数据库,在插入数据,在启动数据库,这时候tungsten 肯定报错推送不过去,------>设置tungsten 为online 即可看到数据。
总结:
Tungsten Replicator 确实达到了我为数据库跨机房间数据同步问题,不过这方面的资料国人还比较少,一旦投入生产出现故障时问题将很难排出。
转载于:https://blog.51cto.com/perlin/1400520