为这个问题找到一个好的标题是非常棘手的任务,但问题是:
我有几台开发机器,我在上面开发我的 PHP 应用程序,并通过本地网络服务器进行测试。
这对每台机器都很有效。但是,我想将数据库从我的机器复制到一个中央位置。
所以,总结一下:
DEV1 -> CENTRAL
DEV2 -> CENTRAL
DEV3 -> CENTRAL
CENTRAL - > DEV1 CENTRAL
-> DEV2
CENTRAL -> DEV3
我希望这是有道理的,因为我找不到一种简单的方法来讲述它。
基本上,它是一种双向复制,其中所有 4 个数据库都包含相同的信息,并且每个数据库都可以在本地更新,然后推送给其他数据库。
这真的可行吗?
我所有的开发机器都运行 Windows 7,我的中央数据库服务器运行 CentOS 6。
@Frederik Nielsen,是的,每个主 MySQL 实例可以有多个从 MySQL 实例。
但是,请注意每个从属只能从一个主复制。所以双向(或四路)复制在你原来的设置中是不可能的,但我认为一个主站有 4 个从站的想法可能是一个很好的解决方案。
看起来你想要多主复制,这在 MySQL 中已经支持了一段时间。
您可以使用 Percona XtraDB Cluster
我目前正在评估它,我认为它非常适合 MultiMaster 写入。它可以使用 mysqldump(默认)、rsync 和 xtrabackup(首选)来初始化新的集群节点。你拥有完全的自由和权力。这可能是有史以来最伟大的陈词滥调,但拥有强大的力量,他们也必须始终承担巨大的责任(视频的 19:16 - 19:25)。
我将此作为 DBA StackExchange 中跨数据中心复制的众多选项之一进行了讨论:https ://dba.stackexchange.com/questions/22788/best-solution-for-cross-datacenter-mysql-master-slave-replication/ 22790#22790