高可用性 MySQL 问题

高可用性 MySQL 问题

因此,在将其移至生产环境之前,我目前正在测试新的数据库拓扑,并且遇到了一个相当奇怪的问题。当前设置如下:5 个服务器实例。2 个是 Master/Master 中的 MySQL DB。2 个是指向虚拟 IP(VIP)的从属服务器,该虚拟 IP 目前指向其中一个主服务器。第 5 个服务器使用 MySQL 代理在从属服务器之间进行负载平衡。

因此,我们的想法是让所有读取操作都在从服务器上完成,而所有写入操作都发生在主服务器上。一切工作正常 - VIP 指向的写入主服务器的任何内容都会传播到从服务器上,并且主服务器相互镜像。

问题是,当我写入当前未被 VIP 指向的 Master 时,它会传播到另一个 Master,但该更改不会传播到从属。

我知道这是一个复杂的问题。如果有人有任何想法,我一定会很感激,并能指出正确的方向。

答案1

是的,问题是 log-slave-updates 标志未打开。我目前正在研究用于流量分割的代理,看来 haproxy 是可行的方法。尽管它不是专门为 SQL 设计的,但它不像 mysql-proxy 那样处于 alpha 阶段。

相关内容