等待奴隶同步

时间:2014-03-10 03:40:42

标签: php mysql master-slave

是否有任何SQL(或PHP命令)可用于强制主服务器将更改传播到从服务器和/或等待更改传播到所有从服务器?

2 个答案:

答案 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。