MySQL 5.6在没有停机时间的情况下复制live master

在复制现有服务器的步骤之后,似乎大多数方法依赖于完全停止主服务器或者至less防止使用flush tables with read lock;来写入flush tables with read lock; 这有效地造成停机时间,因为许多应用程序在无法写入数据库时​​无法正确响应。

有没有一个安全的方法来复制主从机,确保零停机时间和完整的数据库信息同步?

在我们的情况下,我们有一个主人,一个奴隶,他们都工作得很好。 从5.5升级到5.6时出现的一个MySQL错误使得slave变得稍微不同步,现在我们想要完全重新创build它的数据库。 现在,当我们得到一些零星的错误时,我们使用STOP SLAVE; SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1; START SLAVE;跳过它们STOP SLAVE; SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1; START SLAVE; STOP SLAVE; SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1; START SLAVE; 但这只意味着复制不是100%的主人。

谢谢

虽然这是一个老问题,但如果你仍然在寻找答案 – 尝试percona xtrabackup 。 如果你有MyISAM表,使用–rsync选项。 有了它,我们实现了几乎无缝的转储(对于大约1Gb的数据块,锁需要大约5-10秒)。

有。 当所有的数据库引擎都是InnoDB的时候,你已经指定了--single-transaction开关。 这种方式flush tables with read lock; 或者--lock-all-tables是不需要的。

否则,我想,没有其他select。 节哀顺变。

基本上增加从站跳过计数器是不好的,除非你绝对确定它是安全的(例如,当复制缺less用户grant语句或类似的东西)。