以下の内容はhttps://kikeda1104.hatenablog.com/entry/2018/06/22/213500より取得しました。


tsvファイル出力(MySQL)とaws s3アップロード

RedShiftへのデータロードで、テーブルからcsvでダウンロードしてs3にアップロードします。txtファイルの出力とs3のアップロードについて書いていきます。

txtファイル

SQLファイルを作る

# dump.sql
select * from c into outfile '/tmp/table_name.txt' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"';
...

tsvファイルをdump

mysql cliからsqlファイルを実行する。

mysql -u username -p database_name < dump.sql 

s3へのアップロード

aws認証情報を登録

awsのIAMからaccess_key, secret_access_keyを取得、なければ作成する。defaultは登録されているので、プロファイル名は別で定義する。

$ aws configure --profile profile_name
AWS Access Key ID [None]: access_key
AWS Secret Access Key [None]: secret_access_key
Default region name [None]: ap-northeast-1
Default output format [None]: json

shファイルを作る

syncコマンドを利用してアップロードします。shファイルを作ります。

# upload_to_s3.sh
aws s3 sync /tmp/txts s3://bucket_name/txts --profile profile_name --exclude '*' --include '*.txt'
....

shファイルを実行

bash upload_to_s3.sh

# 結果
move: /tmp/table_name.txt to s3://bucket_name/txts/table_name.txt # 成功
move failed: /tmp/table_name.txt to s3://bucket_name/txts/table_name.txt Could not connect to the endpoint URL: "endpoing" #失敗
....

以上になります。

参考

AWS CLI の設定 - AWS Command Line Interface

AWS Command Line Interface での高レベルの S3 コマンドの使用 - AWS Command Line Interface

sync — AWS CLI 1.15.50 Command Reference

AWS CLI S3 Configuration — AWS CLI 1.15.50 Command Reference




以上の内容はhttps://kikeda1104.hatenablog.com/entry/2018/06/22/213500より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14