Mysql 将数据库移动到另一台服务器

Mysql 将数据库移动到另一台服务器,mysql,mysqldump,mysqldumpslow,Mysql,Mysqldump,Mysqldumpslow,我正在使用mysqldump将我的数据库移动到另一台服务器。但数据库中有数百万行的表,mysql恢复时间太长(4小时) 有什么方法可以加快速度吗?是的,您可以在源服务器上杀死mysqld,一旦它关闭,您可以将整个datadir复制到新服务器,并在复制完成后启动两台服务器。这是我过去使用mysql复制完成的方法 在启用二进制日志记录的情况下在源计算机上转储SQL(使用--master data选项),这将为您提供该时间点的数据,并允许您在旧服务器上填充新数据时在新服务器上导入数据 导入后(您说的4

我正在使用mysqldump将我的数据库移动到另一台服务器。但数据库中有数百万行的表,mysql恢复时间太长(4小时)

有什么方法可以加快速度吗?

是的,您可以在源服务器上杀死mysqld,一旦它关闭,您可以将整个datadir复制到新服务器,并在复制完成后启动两台服务器。

这是我过去使用mysql复制完成的方法

在启用二进制日志记录的情况下在源计算机上转储SQL(使用
--master data
选项),这将为您提供该时间点的数据,并允许您在旧服务器上填充新数据时在新服务器上导入数据

导入后(您说的4小时?),您可以
在新服务器上启动SLAVE
,新服务器将重放二进制日志,并与旧服务器保持同步,直到实际切换发生


我想您可以复制/var/lib/mysql的一些内容,尽管我不知道其中存储了多少系统特定信息……我认为这不安全。冒险正确!复制您的mysql数据库文件夹,如果您使用任何数据库,请不要忘记复制包含InnoDB的lib/mysql文件夹中的文件。之后,只需在表上运行修复/优化,它应该可以工作(每次对我都有效!)这对您意味着什么?要么有效,要么无效——试试看。如果只复制数据库,而不复制整个用户和权限信息,我想不出任何安全问题。