我的目标是将大型(〜300GB)表导出到S3中的csv / tsv进行长期存储(基本上,如果有人希望在以后的几年中查看它,可以,但不是必须的)在线提供)。 我需要复制一张表,而不是整个数据库。
快速浏览一下之后,看起来好像是Data Pipeline。可悲的是,数据管道因No space left on device
而失败,这似乎是因为它不支持分段上传(https://forums.aws.amazon.com/message.jspa?messageID=730566)
AWS支持建议我们增加EBS根卷大小,这是通过创建自定义AMI来实现的。
我也尝试过设置带有sqoop的自己的linux机器,但是不幸的是,运行查询一两天后,挂起了。
将一个表从专用RDS转储到S3的最简单方法是什么?
答案 0 :(得分:1)
我建议您启动具有巨大EBS容量(例如400 GB)的Micro EC2实例。然后编写一个简单的shell脚本(两行代码)以导出(使用mysqldump)每个表,然后使用aws s3 cp
命令将其复制到S3。您需要注意的是,表是否正在实时更新。那么使用此方法可能会导致S3上的数据存储丢失。
首先从较小的表开始,以确保它可以工作。 mysqldump适用于非常大的表。