Transfer在MySQL双主同步架构中的应用

php中文网
发布: 2016-06-07 17:58:59
原创
1267人浏览过

有同学讨论到Transfer能否支持双主结构,答案是支持的,这里简要描述下。 背景 Transfer既可以当作主从库之外的工具来用,也可以本身充当slave的角色。本文分别描述在这两种使用场景下的部署结构和切换动作。 Slave模式 a) 结构 - 这个就是最简单的双主啦,Tr

有同学讨论到Transfer能否支持双主结构,答案是支持的,这里简要描述下。

背景

Transfer既可以当作主从库之外的工具来用,也可以本身充当slave的角色。本文分别描述在这两种使用场景下的部署结构和切换动作。

Slave模式

a)      结构
-




这个就是最简单的双主啦,Transfer呢?代码直接写到这两个Master里面啦,所以他们就是Transfer.

b)      切换

DBA同学就用你最熟悉的切换过程去操作。

1)      停止对Master1的更新

2)      确定数据完全同步

3)      将更新引Master2

这里由Transfer的机制保证步骤2)的时间会很短(因为无延迟)。

工具模式

a)      结构



如果你比较担心数据安全,怕这个patch作为直接充当master1和master2会有风险,(这是负责任的态度!),就用上图表示的结构。

其中Transfer1(T1)和Master1(M1)在同一个机器上,(Transfer1)T2和(Master)M2共同在另外一个机器上。

斜线表示主从关系,T1是M2的从库,T2是M1的从库。

    垂直线表示更新关系,T1收到的同步命令用与更新M1, T2更新M2

b)      切换

切换过程跟第一种模式的一模一样。

小结

两种模式的取舍上,第一种运维比较简单,但是风险比较大,如果Transfer有bug,要更新版本,或者要换会原来的主从时,必须得重启Master1和Master2,这种操作并不是所有的系统都能容忍。

第二种模式我比较推荐。好处有以下几个:

1、Transfer本身不带数据,就算coredump了也不会影响数据服务。同步过程自然要切换回原来的主从方法,就让M1跟M2直连。

(看官问:怎么你这推广东西的说来说去不是bug就是coredump的?

笔者答:虽然我已经做了自认为足够的测试,但风险总要说明,这是负责任的态度,不然回头你用了把数据服务搞挂,跨省我,咋整?)

2、Master要升级版本(比如你以后要升级成5.6),Transfer可以不改变。

当然,两种都是支持的,胆子大的可以把第一种用起来,免费保修还不行嘛。
相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号