在另一台服务器上高效克隆MySQL数据库

3

我们需要定期克隆生产服务器上的MySQL 4数据库(仅一个模式),并将其导入一个或多个开发数据库。我们目前的流程是使用'mysqldump'命令导出数据库,通过ssh复制它,并使用'mysql'客户端实用程序在目标机器上恢复它。

导出和复制相对较快,但还原数据库模式(结构+内容)需要数小时。有没有更省时的方法来进行克隆?

3个回答

2
如果您已经设置了LVM,请查看此链接,了解如何使用LVM进行mysql备份:使用LVM进行mysql备份。使用LVM可以快速地进行备份。备份完成后,将其打包并将快照复制到目的地,然后解压缩。相比于使用mysqldump加载,这样做应该更快。

2
使用 load data infile 命令。这比从备份中加载要快一个数量级。如果运气好,你可以使用管道来加载数据。如果你能够将数据从一个服务器导出到相同的管道,则可以让两个服务器同时工作。

太好了,David!我需要先转储和恢复(可能已更改的)架构结构,但使用OUTFILE/INFILE复制数据只需要对当前脚本进行小的修改。谢谢! - Daniel Werner

1

我个人没有使用过它 - 对于我的数据量,mysqldump和mysqldump一直足够了 - 但是mysqlhotcopy看起来可能更快,因为它使用cp/scp来复制数据目录。


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