MySQL 从服务器可以同时充当主服务器吗?

MySQL 从服务器可以同时充当主服务器吗?

我正在将 2 个数据库服务器(主服务器和从服务器)迁移到两个新的数据库服务器(主服务器和从服务器)

DB1-主(生产)

DB2 - 从属(生产)

DB3-新主人

DB4-新奴隶

目前我已将复制设置为:

DB1 -> DB2
DB3 -> DB4

为了将生产数据复制到新服务器,我希望将其“菊花链式”连接起来,使其看起来像这样:

DB1 -> DB2 -> DB3 -> DB4

这可能吗?当我show master status;在 DB2(生产从属服务器)上运行时,binlog 位置似乎从未改变:

+-----------------+----------+--------------+------------------+
| 文件 | 位置 | Binlog_Do_DB | Binlog_Ignore_DB |
+-----------------+----------+--------------+------------------+
|mysql-bin.000020|98|||
+-----------------+----------+--------------+------------------+

我有点困惑为什么 DB2 上的 binlog 位置没有改变,理想情况下它应该是 DB3 的主控。

答案1

binlogDB2未更新从属更新。要以菊花链方式进行复制,必须log-slave-updates在 my.conf 中进行设置。

http://dev.mysql.com/doc/refman/5.1/en/replication-options-slave.html#option_mysqld_log-slave-updates

答案2

是的,这是可能的:) 这被称为“主从中继”复制,网络上有很多关于它的文档。

我建议你看一下官方文档这里

顺便说一下,也可以看看这些幻灯片。他们对复制拓扑有一些提示。

希望这可以帮助。

答案3

是的 - 你可以菊花链式连接 mysql 服务器,你甚至可以制作一个循环复制其中有两台或更多台机器。只需记住在同时充当主服务器的从服务器上启用 binloging。

答案4

为什么不直接将 DB3 添加为新的从服务器,然后在您准备切换时将其提升为主服务器?这将为您带来拥有多个从服务器的临时额外好处,并减少或消除您的停机时间。

相关内容