我的目标是将一个很大(约300 be )的表导出到S3中的csv/tsv,以便长期存储(基本上,如果有人想在未来几年内查看它,他们可以,但它不需要在线提供)。我只需要复制这一个表,而不是整个数据库。
经过一些快速的谷歌搜索,数据管道似乎是一条可行的道路。可悲的是,No space left on device的数据管道失败了,这似乎是因为它不支持分块上传(https://forums.aws.amazon.com/message.jspa?messageID=730566)
AWS支持建议我们增加EBS根卷大小,我通过创建自定义AMI实现了这一点,但无济于事。
我还尝试在我自己的linux机器上设置sqoop,但不幸的是,它在运行查询一两天后就挂起了。
将私有RDS中的一个表转储到S3的最简单方法是什么?
发布于 2018-10-08 21:21:55
建议您启动一个400G的超大EC2容量的微型EBS实例。然后编写一个简单的shell脚本(两行代码)导出(使用mysqldump)每个表,然后使用aws s3 cp命令将其复制到S3。需要注意的是,如果表是实时更新的,那么使用这种方法可能会导致S3上的数据存储丢失。
首先从较小的表开始,以确保它能正常工作。mysqldump适用于非常大的表。
https://stackoverflow.com/questions/52702067
复制相似问题