🙌
Aurora(PostgreSQL)のCSVエクスポートをS3バケット直で行う
データが大きい場合に、EC2にCSVファイルをエクスポートしようとすると、リソースを食って失敗する事があります。
その場合は 標準出力 で S3バケットにそのまま流すのが良いと思います。
- エクスポート時
$ psql -h <Auroraエンドポイント> -U <ユーザー名> -d <DB名> -c "\copy (SELECT * FROM <テーブル名>) TO STDOUT WITH CSV HEADER" | aws s3 cp - s3://<バケット名>/file.csv
- インポート時
$ aws s3 cp s3://<バケット名>/file.csv - | psql -h <Auroraエンドポイント> -U <ユーザー名> -d <DB名> -c "\copy <テーブル名> FROM STDIN WITH CSV HEADER"
Discussion