小编Chr*_*ltz的帖子

为什么mysqldump会停止整个备份的从属SQL线程?

我最近意识到,--master-data当我真正想要的是时,我正在使用从复制从属转储备份--dump-slave。切换到 后--dump-slave,我发现这mysqldump将在备份期间停止从属 SQL 线程(这从文档中可以清楚地看出 - 这并不奇怪)。

我想知道是否有人可以解释为什么整个备份需要停止从属服务器的 SQL 线程?我正在使用--single-transaction,并且希望在备份开始时获得一致的快照。即使事务由 SQL 线程处理,这也应该是可能的。即使从属 SQL 线程由于已mysqldump获取某些锁而完全被阻塞,也应允许从属在备份期间继续(尝试)执行 SQL DML 语句。

我也可以理解希望至少暂停从属 SQL 线程,以便 get-slave-status 然后启动事务操作可以一致地发生,但是一旦转储操作开始,从属 SQL 线程就可以重新启动,对吧?

--master-data与复制主机一起使用时,全局锁被获取一次然后释放,从而允许常规应用程序负载在转储操作期间继续。为什么不能以同样的方式在从属设备上完成此操作?任何人可以提供的任何信息都会非常有帮助。

mysql mysqldump backup master-slave-replication

5
推荐指数
1
解决办法
953
查看次数