使用mysqldump将Slow Large Innodb DB导入Amazon RDS

时间:2013-01-15 14:35:24

标签: mysql innodb amazon-rds

行 我正在尝试使用Amazon RDS,并且在使用mysqldump及时加载InnoDB数据库时遇到了很多麻烦。

我正在尝试让我的本地数据库进入云端。

使用

mysqldump --single-transaction --opt -u root > file.sql

我可以在大约3分钟内获得转储(~1.5GB)到我的本地文件。 数据库大约是4G,但mysqldump生成一个大约1.5G的SQL文件

当我使用

mysqldump -h localhost -u XXXX -pXXXX DBNAME --compress --single-transaction --quick  --opt --order-by-primary| mysql --host=AMAZONHOSTNAME --user=username --password DBNAME

它需要永远 - 我根据它的速度估计需要5个小时。

就我的带宽速度而言,在www.speedtest.net上我的上传速度为0.67Mbps。

我无法理解为什么这么长时间。 我是 : a)压缩流 b)拥有论坛似乎需要的所有选项以及亚马逊文档 c)在Amazon RDS上有一个大型实例。

有人可以帮我吗?有没有办法提高速度?

1 个答案:

答案 0 :(得分:3)

我已经修好了,或者至少提高了速度。

我添加了 - 压缩到mysqldump命令的REMOTE端

即这个

mysqldump -h localhost -u XXXX -pXXXX DBNAME --compress --single-transaction --quick  --opt --order-by-primary| mysql --host=AMAZONHOSTNAME --user=username --password DBNAM

成为了这个

mysqldump -h localhost -u XXXX -pXXXX DBNAME --compress --single-transaction --quick  --opt --order-by-primary| mysql --compress --host=AMAZONHOSTNAME --user=username --password DBNAM

数据传输速率(以我的远程数据库的大小增加来衡量)从每分钟大约13MB变为每分钟大约73MB。