将MySQL版本迁移到新服务器的方法

时间:2014-03-17 11:42:46

标签: mysql ubuntu centos migration

由于某些技术原因,我必须将在CentOS上运行的实际服务器迁移到新服务器,但在Ubuntu上运行。

我必须保持现在的SQL DB,相同版本的MySQL等。 我尝试了几种转储脚本和方法,但无法将转储导入到较新版本的MySQL中。

所以我正在考虑将 / var / lib / MySQL 文件夹和其他MySQL文件夹复制到新服务器。 你对此有何看法?它会起作用吗?

我还在考虑转到旧服务器的恢复控制台并对新服务器执行rsync,这样我就可以将整个系统复制到新服务器。 但在我看来,这有点沉重。我不知道Unix足够remount个光盘,并执行所有可以使复制工作的任务。

1 个答案:

答案 0 :(得分:0)

实际上有几种方法可以做到这一点。第一个也是最好的是评论者所说的话。使用mysqldump创建一个sql文件,然后将其导入另一台机器。如果其中一台机器上的空间有问题,您可以更直接地导入:mysqldump {YOUR OPTIONS HERE} | mysql -h {NEWSERVER} -u root -p

如果可能的话,你应该采用上述方法。在进行跨版本导入时,它将在100%的时间内更好地工作。只需修复您看到的错误即可。如果语言版本不同,则可能需要重写触发器和存储过程。

如果你知道危险并且丢失了数据,你可以尝试以下xtrabackup方法:

  1. 在旧服务器(http://www.percona.com/software/percona-xtrabackup
  2. 上安装xtrabackup
  3. 从xtrabackup(阅读文档)
  4. 获取完整且一致的备份
  5. 关闭新服务器上的mysql
  6. 将备份从xtrabackup复制到新服务器
  7. 再次启动mysql,升级表可能需要一段时间
  8. 我之前在mysql服务器版本之前做过这个,但这不可靠,你很可能最终得到不可靠或损坏的数据。这样做需要您自担风险。