Php 保持两个mySQL数据库(位于不同位置)同步的策略?

Php 保持两个mySQL数据库(位于不同位置)同步的策略?,php,mysql,database,apache,synchronization,Php,Mysql,Database,Apache,Synchronization,可能重复: 我需要建议: 如何保持两个mySQL数据库(相同结构)在两个位置同步? 我在做什么: 我正在为一个有两个地点的企业创建一个应用程序。他们需要共享/更新数据库中的信息,但所有者希望它是内部的,而不是外部的,因为他担心在互联网中断的情况下能够运行 我目前的策略: 我已经设置了两个服务器(每个位置一个),每个服务器都运行本地Apache+MySQL。无法通过internet访问webapp,只能在本地访问。mySQL可以通过互联网通过SSL访问(使用复杂密码) 本地webapp运行并与本

可能重复:

我需要建议:

如何保持两个mySQL数据库(相同结构)在两个位置同步?

我在做什么:
我正在为一个有两个地点的企业创建一个应用程序。他们需要共享/更新数据库中的信息,但所有者希望它是内部的,而不是外部的,因为他担心在互联网中断的情况下能够运行

我目前的策略:
我已经设置了两个服务器(每个位置一个),每个服务器都运行本地Apache+MySQL。无法通过internet访问webapp,只能在本地访问。mySQL可以通过互联网通过SSL访问(使用复杂密码)

本地webapp运行并与本地mySQL交互以进行读取。对于写入,它先在本地写入,然后再写入远程服务器(写入2x)

我担心在记录ID可能重复/不同时创建重复/损坏的条目,等等。。。这就是为什么我不依赖于记录id,而是依赖于我控制的一个单独的唯一编号(不是自动递增)


底线是。。。这是我在做了大量研究后所能想出的最好办法。我说得对吗?或者有人能提供建议吗?

这被称为复制,MySQL(像任何成熟的数据库管理系统一样)对其具有本机支持。请参阅:

您可能正在查找分布式事务。MySQL提供XA事务支持(有关更多信息,请参阅)。

MySQL没有内置的分发功能吗?请看“多主机”和“自动增量”和“自动增量”偏移量。尽管双向(即主从图是循环的)复制已知是危险的/困难的,并且有文档记录。尽管MySQL将确保不存在复制循环,但数据一致性可能存在风险(特别是在使用自动增量列时)。