运行 MySQL 服务器作为一个数据库的从服务器,并作为另一个数据库的主服务器

运行 MySQL 服务器作为一个数据库的从服务器,并作为另一个数据库的主服务器

我有两台 MySQL 服务器,DB1 具有主从复制。从属服务器保存 DB2。由于从属服务器功能不太强大,我想在第三台服务器上对 DB2 运行分析。可以进行这样的设置吗?

答案1

你的标题和问题都比较模糊,我来回答两个问题。

  • 不要尝试复制一些朝一个方向的表格,其他另一个方向的桌子。

  • 将 3 个(或更多)服务器链接在一起是完全没问题的:

DB1 是主
DB2 是 DB1 的副本,也是主
DB3 是 DB2 的副本

或者你可以让两个副本挂在一个主节点上。也就是说,

DB1 是主
DB2 和 DB3 分别是 DB1 的副本 - 注意:它们的中继日志不一定彼此同步;这样没问题。

双向复制-- 双主设置是指两台服务器既是“主”又是“副本”。(这以前称为“双主”。)它主要用于实现相对快速的故障转移。

当你可以对复制的内容使用限制(通过 binlog/replicate-do/ignore),您将失去故障转移功能。

需要注意的一件事任何复制拓扑。所有写入操作均在全部服务器。(除非被过滤掉。)我的观点是,你不能用正常的复制来“扩展写入”。

服务器 1 上的 DB1 -> 服务器 2 上的 DB1 服务器 2 上的 DB2 -> 服务器 3 上的 DB2

那么,有 3 台服务器和至少 2 个数据库?

在 Server2 上,您可能希望“binlog_ignore = DB1”以避免复制db 到 Server3。

Server2 被设置为主服务器(对于 Server3)和副本服务器(对于 Server 1)。

相关内容