使用mysqldump将大型Innodb导入Amazon RDS的速度较慢

使用mysqldump将大型Innodb导入Amazon RDS的速度较慢,mysql,innodb,amazon-rds,Mysql,Innodb,Amazon Rds,嗯 我正在试验AmazonRDS,并且在使用mysqldump及时加载InnoDB数据库时遇到了大量问题 我正在尝试将我的本地数据库连接到云 使用 mysqldump --single-transaction --opt -u root > file.sql 我可以在大约3分钟内获得本地文件的转储(~1.5GB)。 数据库大约4G,但mysqldump生成的sql文件大约为1.5G 当我使用 mysqldump -h localhost -u XXXX -pXXXX DBNAME --c

嗯 我正在试验AmazonRDS,并且在使用mysqldump及时加载InnoDB数据库时遇到了大量问题

我正在尝试将我的本地数据库连接到云

使用

mysqldump --single-transaction --opt -u root > file.sql
我可以在大约3分钟内获得本地文件的转储(~1.5GB)。 数据库大约4G,但mysqldump生成的sql文件大约为1.5G

当我使用

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上有一个大型实例


有人能帮我吗?有什么办法提高速度吗?

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

我添加了--compress到mysqldump命令的远程端

这个

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左右。

您受到RDS IOPS的约束。如果您不使用已配置的RDS,那么您可能“滚动”了可怕的硬件,并且您的IOPS上限为300(这是我上次使用RDS时得到的数字)。除了获得保证10k IOPS的已配置RDS之外,您什么也做不了。我不认为这是正确的-我刚刚重新检查了我的带宽计算-1.5GB在0.67MB/s(8MB/MB)时需要1500*8/0.67=17910秒或/60或4.9小时,这就是我所经历的。我想这是我的带宽?