mysql 实现异地同步_MySQL 异地同步问题

各位好,最近又面临 MySQL 异地同步问题,想了一个主意,不知道大家有没有更好的办法。

背景

MySQL , MyISAM 引擎,中美欧三地机房

数据不要求实时,有一两天延时也没关系,服务器半夜可停机。

原来

美国放主服务器

中欧放从服务器

主从复制

效果好的时候一切 OK,但你懂的,经常断,修复起来很麻烦。

找更好的方案

我想到的方案

因为 MyISAM 引擎本质上就是文件,所以我想用 diff 的方式来做:

a) 主服务器上 copy 一份原始数据库 base 文件 (table.FRM, table.MYD, table.MYI),并传递到从服务器

b) 一天后停主服务器,跟原始文件生成 patch 文件

c) 传递 patch 到从服务器,跟原始文件 merge ,生成新的数据库文件,重启 mysql 服务

d) 以后每天半夜同样处理

e) 视 patch 文件大小,可以一个月一次或几个月一次更新 base 文件

这一切可以通过 bash 和 Cron 自动执行,简单可靠,只要主服务器不出错,从服务器没有出错的理由。 主服务器可以用 Digital Ocean 的备份服务。

大家讨论一下这个方法有没有什么明显问题,或者有什么更可靠的简单方法。 方法要简单,类似这种高雅范的我真有点吃不消: https://github.com/alibaba/otter

谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值