无停机迁移mysql服务器

3
我有一个小的mysql数据库(200MB)在服务器上运行。使用它的应用程序每分钟写入大约100次,读取较少。
我需要将该数据库移动到一个新服务器,最好没有或尽可能少的停机时间。不能丢失任何正在写入其中的数据。
我猜想执行mysqldump再恢复的方式太慢了,正确的方式是什么?
大多数表都使用Innodb。

2
你应该将这个发布到http://serverfault.com。 - Mike Purcell
1个回答

4

您可以设置复制。将新服务器设置为当前服务器的从服务器。然后切换主/从连接(网络上有足够的关于如何准确执行此操作的信息,但最终您将拥有两个几乎相同内容的服务器,其中一个略微领先另一个,并切换它们的角色)。

一旦切换完成,您可以关闭从服务器(旧主服务器),问题就解决了。


+1 - 正是我建议的。看起来你在切换角色并确保复制已经追上时会有一些停机时间,但这应该是最小的(不到一分钟?) - Eric Petroelje
如果您将其设置为只读一段时间,写入操作的停机时间就可以最小化,然后它可以轻松地追上。另一个可能性是进行主-主复制,然后仅指向两个服务器中较新的服务器进行操作,并等待一段时间。但这很棘手设置。 - Nanne
你仍然需要复制原始服务器。如果你的文件系统支持快照,那么相对容易,否则可能同样困难。 - Evert

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接