mysqldumpでは CSV出力 with headings ができなさそう

Hisashi SOGA
Jan 3 · 1 min read

Elasticsearch に MySQL のとあるテーブルをまるっと取り込もうとしたときに、mysqldump コマンドで ヘッダーとデータ1行のCSVを出力できるかなと方法を探ったんですが見つからなかった
ちなみにまるっと取り込むのはLogstash経由にすればそのCSVなくてもできると判明

What I learned

🙅🏻‍♀️ mysqldump では CSV出力 with headings ができなさそう
🙆 以下のようなSQL + コマンドでならTSV出力できそう

echo “SELECT * FROM city LIMIT 1;” | mysql -uroot -psecret world > city1.tsv

Footprint

  • CSV出力(ヘッダーなし)するコマンド例

mysqldump -h localhost -P 3306 -u root -p — tab=/tmp — fields-terminated-by=, — skip-dump-date — complete-insert -t world city — where=”true limit 1" > city.csv

Appendix

    Written by

    a wanderer, aiming a good IT service `Practitioner`

    Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
    Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
    Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade