数据库 MySQL 跨服务器同步某张表的数据过来,最佳实践是什么?

mingyuan0715 · 2018年03月13日 · 最后由 mingyuan0715 回复于 2018年03月14日 · 6787 次阅读

需求,其实只需要读某几张表的数据,不过数据库主服务器在国外,很慢;

  1. Triggers

  2. Event Scheduler

  3. Views

  4. 主从复制

  5. federated 引擎(是否可以缓存)

有实践过的兄弟可以分享分享么?

逻辑复制,可以支持表级别的

看需求。

如果表在几百兆以内,数据不需要高度实时同步,可以像我这样做。

主服务器上 mysqldump 成 sql 文件,然后 rsync 到从服务器,第一次比较慢、 然后在主服务器上设置定时任务,重复上面的步骤,同步应该相当快

在从服务器上,设置定时任务,导入 sql 文件,几百兆的东西也就几秒到几十秒。

这个操作相当稳定,我已经稳稳运行一年了,每天半夜同步一次。

以前用过主从复制,因为是跨国线路,经常掉链子。这个方法不优雅,但简单粗暴,稳定可靠。

guyanbiao 回复

postgresql ?

Peter 回复

如果对实时性有一定要求呢?

什么样的实时性?一小时以上应该问题不大。

不然可以研究一下这个,我没试过: https://github.com/alibaba/otter

如果可行,欢迎回来报告一下。

Peter 回复

我想要的是个比较低成本的解决方案。我觉得你这个方案也倒能性价比很高的解决问题。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册