MySQL 复制多个位置

MySQL 复制多个位置

为这个问题找一个好的标题是一项非常棘手的任务,但是这里是问题:

我有几台开发机器,用来开发我的 PHP 应用程序,并通过本地网络服务器进行测试。

这对于每台机器来说都很好。但是,我想将数据库从我的机器复制到一个中心位置。

总结一下:

DEV1 -> 中央
DEV2 -> 中央
DEV3 -> 中央
中央 -> DEV1
中央 -> DEV2
中央 -> DEV3

我希望这是有意义的,因为我找不到一种简单的方法来讲述它。

基本上,它是一种双向复制,其中所有 4 个数据库都包含相同的信息,并且每个数据库都可以在本地更新,然后推送到其他数据库。

这实际上可行吗?

我所有的开发机器都运行 Windows 7,而我的中央数据库服务器运行的是 CentOS 6。

答案1

您可以使用 Percona XtraDB Cluster

我目前正在评估它,我认为它为 MultiMaster 写入而设计得非常出色。它可以使用 mysqldump(默认)、rsync 和 xtrabackup(首选)来初始化新的 Cluster 节点。您拥有完全的自由和权力。这可能是有史以来最伟大的陈词滥调,但能力越大,责任越大(视频 19:16 - 19:25)

我在 DBA StackExchange 中将其作为跨数据中心复制的众多选项之一进行了讨论:https://dba.stackexchange.com/questions/22788/best-solution-for-cross-datacenter-mysql-master-slave-replication/22790#22790

答案2

@Frederik Nielsen,是的,每个主 MySQL 实例可以有多个从属 MySQL 实例。

但是,请注意,每个从服务器只能从一个主服务器复制。因此,在原始设置中,双向(或四向)复制实际上是不可能的,但我认为一个主服务器带 4 个从服务器的想法可能是一个好的解决方案。

答案3

看起来你想要的是多主复制,它已经在 MySQL 中支持一段时间

相关内容