1
我希望能够在mySQL中使用load data infile命令,而不是从本地文件加载数据我想从CSV文件加载它。将数据从s3加载到运行EC2实例(不是RDS)的mySQL
即,如果该文件是在本地存储它会看起来像:
LOAD DATA INFILE'C:\\abc.csv' INTO TABLE abc
但如果它是在S3中,不知道我怎么会做这样的事情。
这可能吗?
注意:这不是一个RDS的机器,所以这个命令似乎不工作: http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-template-copys3tords.html
您可以将S3文件复制到本地位置 - 即与[aws cli](https://aws.amazon.com/cli/)运行类似's3 cp s3://bucket/file.csv C:\\某处\ file.csv'? – stdunbar
@stdunbar谢谢。是的,我可以,但不应该有办法避免不必要的数据复制和数据传输?这就是这个问题的目标。我正在传输TB数据,这样复制会带来额外的成本和时间。 – Dnaiel
最终,你正在寻找从S3流数据到数据库,并没有一些代码,你不能直接做到这一点。问题是MySQL命令行不会从S3流出。另外一种选择是将S3安装为文件系统(类似[s3fs-fuse](https://github.com/s3fs-fuse/s3fs-fuse))。这使得S3看起来像一个文件系统。 – stdunbar