我们目前有一个3节点的Percona Xtradb集群在单个数据中心中运行。 我们希望在发生灾难时增加容错function,以防止对单个数据中心的依赖,并将我们的Percona数据与第二个数据中心同步,以便在这种情况下我们可以轻松切换我们的应用程序以连接到新的同步群集事件。
虽然我知道我可以简单地在许多数据中心中添加更多的主节点,但我们不能牺牲数据中心在不同位置的往返写入时间。 相反,我想知道是否可以用MySQL复制来做到这一点。 我的想法是这样设置:
3节点主Percona集群 – > MySQL副本DB – > 3个节点Secondary Percona集群
虽然我意识到可能会有一些小的副本滞后,并且数据可能在几秒钟内不同步,但这是我们愿意做出的折衷。 通过这样的设置,我们可以很容易地在开关的翻转处切换群集。
我有几个问题:
我知道很多问题,但非常感谢您的帮助!
集群 – > MySQL – >集群工作。 虽然我还没有尝试过,但是我自己,我知道Cluster-> Cluster是几个月前的一个Soon™选项,所以你可以跳过中间步骤。 从PXC的PoV,你奴役你的机器之一,其他机器奴役你自己; 如果您正在接收数据并且允许从您那里接收数据,那么您就不那么“接收数据和写入数据”,如果这种区别有意义的话。
要重新同步,只需在每个集群上手动调整auto_increment_increment和auto_increment_offset就可以像master-master一样设置。 可能很简单,但最糟糕的是,这意味着限制PXCselect的auto_increment_ {increment,offset},这将是一个小补丁。
加分:为了获得最大的复制速度,在中间数据库中修改(在会话中sql_log_bin=0 )你的表来使用黑洞引擎。