是否有任何SQL(或PHP命令)可用于强制主服务器将更改传播到从服务器和/或等待更改传播到所有从服务器?
答案 0 :(得分:4)
您可以使用MASTER_POS_WAIT()
功能。在从属服务器上的SQL表达式中调用此函数,它将阻塞(不返回),直到从服务器执行到指定的日志文件&位置。
SELECT MASTER_POS_WAIT('mysql-bin.000042', 8675309);
请参阅https://dev.mysql.com/doc/refman/5.6/en/master-pos-wait.html
答案 1 :(得分:2)
标准MySQL复制是异步的。您必须自己检查奴隶 - 可能,但是没有内置命令可以为您完成所有工作。
MySQL 5.5带来semisynchronous replication,我没有经验。
还可以通过像Galera这样的东西进行同步复制。我们在工作中使用基于Galera的MySQL变体Percona XtraDB Cluster。