MySQL.com

Linux/Ubuntu 上の MySQL で SELECT 結果を CSV形式のファイルに出力する方法についての覚え書きです。

 

 

環境

Ubuntu 16.04 LTS

MySQL 5.7.22

方法

CSV形式のファイルに出力

SELECT文の最後に「INTO OUTFILE 〜」と続けて書いて、SELECT文の結果をカンマ区切りのCSV形式で保存します。

これで /tmp にCSV形式のファイルとして保存されました。

Libreoffice等で開いてみると正常に表示されます。

–secure-file-privの設定

初回にSELECT文などの結果をCSVなどのファイルに保存しようとすると「–secure-file-priv」オプションによって実行できませんと表示されます。

その場合には MySQL の設定を変更して再起動します。

MySQL の再起動後にファイル出力のSQLを実行すると正常に実行されます。

パーミッションエラー

CSVファイルの出力先をホームディレクトリ下などに保存しようとするとパーミッションエラーが発生しました。

そういう場合は /tmp ディレクトリ直下に保存するようにすると問題なく保存できそうです。

【Linux】MySQLのSELECT結果をCSVファイルで出力する方法

コメントを残す