MySQL 数据库迁移到新服务器

MySQL Database migration to new server

我们在 MySQL 5.6 中有一个通用数据库,许多服务都在使用它。其中一项服务想要将一些表从公共数据库迁移到新的 MySQL 服务器 5.7。 旧 MySQL 服务器继续被另一项服务使用。总数据大小约为 400GB。 有什么推荐的程序吗?

两种方法

方法:1

  1. 使用 mysql 版本 5.7 创建一个从站,并使用以下选项仅复制公共数据库 replicate-db
  2. 在 master 上没有 feed 发生,slave 上没有延迟的时候。通过停止从站并断开主站与从站的连接,将其用作新服务器。

在奴隶上:

  1. STOP SLAVE
  2. 要使用 RESET SLAVE,必须停止从复制线程 $> 重置奴隶

关于大师:

  1. 删除复制用户
  2. FLUSH LOGS

方法:2

试试备份方法

因为数据库大小是 400 GB,mysql转储是不够的。

尝试使用 xtrabackup 的部分备份方法: xtrabackup --backup --tables-file=/tmp/tables.txt

备份完成后,验证并将其恢复到新服务器版本 5.7。

参考:

https://www.percona.com/doc/percona-xtrabackup/2.4/xtrabackup_bin/xbk_option_reference.html#cmdoption-xtrabackup-tables-file

np:在这两种方法中,确保检查 table/mysql 版本兼容性 [5.6 vs 5.7]