這個 case 的情境是要將 AWS RDS 的 MySQL / Aurora Table 轉成 csv 檔案
透過 SELECT … INTO OUTFILE S3
這是 AWS 文件 [3] 中提到的做法,在 mysql> 直接下 SELECT INTO OUTFILE S3
指令就能將檔案存在 S3
執行之前必須先把 IAM Policy 權限開放以下:
- ListBucket
- AbortMultipartUpload
- ListMultipartUploadParts
- PutObject
- DeleteObject
- GetObject
這個功能很常用在 MySQL 要指定 data 匯出做分析 or 作業
透過 mysql client 指令
這個方法是透過 mysql command 的方式將資料匯出,適合一次性的手動匯出
$ mysql -u root -ppassword --database=dbname -e "
select concat(field1,',',field2,',',field3) FROM table" > table.csv
References
- Exporting table from Amazon RDS into a csv file
- AWS Discussion Forums – export database to CSV
- Saving Data from an Amazon Aurora MySQL DB Cluster into Text Files in an Amazon S3 Bucket