同步MySql DB数据

时间:2011-07-15 13:22:42

标签: mysql database distributed data-synchronization

首先,我是分布式数据库世界的新手,无论如何情况是:

我在美国,瑞典和澳大利亚有三台服务器,所有这些服务器都部署了mysql DB(结构相同)。因为不同的用户正在使用这些应用程序,所有三个DB都有不同的数据;现在,从现在开始,如果任何一个服务器中的数据发生任何变化,我们需要每次同步DB数据;告诉我什么是优化的解决方案。

或 如果我们为所有Web服务器使用一个相同的数据库服务器,它会降低应用程序的速度吗?

请建议一些事情。

2 个答案:

答案 0 :(得分:0)

这几乎就是复制的目的。

http://dev.mysql.com/doc/refman/5.0/en/replication-howto.html

编辑:除非您使用的是网络加速器公司(Akamai等),否则由于响应时间较慢,我不建议使用单个服务器。

答案 1 :(得分:0)

如果使用标准MySQL复制,您将面临几个问题:

  1. MySQL复制基本上是主 - >奴隶。因此,更新在主服务器上完成,然后将tehm复制到从服务器。这可能非常有效,但它通常意味着您的两个位置将具有较慢的更新,但读取将是正常速度。

  2. 1的改进 - 事务发生在Master上,所以如果你创建一个新记录并获取LAST_INSERT_ID()并将其插入另一个表中,所有读取和写入都需要转到MySQL master,因为它会发生变化在交易完成之前,在奴隶上不会显示。

  3. 您的现有数据是否可以集成到一个数据集中?如果没有,那么你可能会遇到问题。

  4. 应用程序是否“感知办公室”。换句话说,如果你把几个办公室的数据放在一起它还能运作吗?应用程序是否基于其所在的办公室对数据做出假设?