我们开始使用 MySQL 的多主复制管理器,我想知道是否可以将此设置视为多对称处理:进程从进程队列弹出,节点(在本例中为服务器) 最空闲的被选为作业。
似乎发生的事情是,服务仅在 mysqld 崩溃或消失时才切换到从服务器。
有没有办法使 MySQL 的数据库复制以更分布式的方式进行?也许除了 MMM 之外还有其他软件可以做到这一点?
有没有办法在 mysqld 变慢时(而不是仅在它失败时)将读取者角色切换到另一台服务器?
最佳答案
使用 Mysql 多主复制在一般情况下写入任意节点是不安全的。这是因为它是异步的。
始终写入同一个节点。我的意思是总是。仅当您确定其他节点已关闭时才写入其他节点,并且您确定在它关闭之前,整个二进制日志已被处理。
在实践中,这意味着总是写入一个节点。
无论如何,在多个节点之间分散写入对提高写入性能没有任何帮助,因为无论如何两个节点都必须完成所有写入。
关于mysql - 使MySQL数据库复制总是使用最空闲的节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2427419/