2017-01-16 44 views
0

我有一个运行在主服务器上的Web应用程序。Mysql多个离线数据库

同一应用程序可以运行在多个脱机服务器。这些离线服务器在技术上并不处于离线状态,但互联网连接并不可靠。

当互联网成为可在任何脱机服务器,我想与主服务器同步其数据。数据同步将是两种方式,主服务器的更改将转到脱机服务器,反之亦然。

我在看MySQL的复制,它会工作无缝如果它只是一个主服务器和一台离线服务器,但由于可以有多个脱机服务器,我想什么是前进的最好方式。

的MySQL版本:MySQL的 14.14版DISTRIB 52年5月5日,为Linux下(x86_64)使用readline的5.1

+0

你有哪个版本的mysql? – x01saa

+0

您可以使用multimaster配置主 - 主复制。 – GoodWasHere

+0

在多主节点中,解决方案是以循环方式添加复制。这意味着A - > B - > C - > D - > A。在这个问题中,如果任何节点关闭,复制将会停止,这对我来说是一个巨大的可能性。 – ABJ

回答

0

MySQL的复制是不是你想要的这里。

  1. 默认情况下MySQL副本是只读的。这是有原因的。

  2. MySQL复制假定一个线性 “时间轴”。没有规定合并来自多个来源的更改;即使您将副本设置为从主服务器分离时也是可写的,但之后将无法继续从主服务器复制更改,因为其数据会与主服务器分离,并且无法协调更改。

您将需要在应用程序中实现同步方案。请注意,这可能会很复杂 - 您需要考虑通过分割的两个“边”对对象进行更改的情况。