csvファイルをmysql5.7にimportする方法
背景
データがcsvで共有されているため、それを手元のmysql5.7に入れたい。
/var/lib/mysql-files/に移動
移動しないと以下のエラーが出る
The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
importする
linuxサーバではdefaultではセキュリティーの問題でLOAD DATA LOCALコマンドが使えなくなっている。
以下のようなエラーが出る。
The used command is not allowed with this MySQL version
mysql接続時に--local-infile=1オプションを渡す。
mysql -uuser -ppassword -hhost --local-infile=1
load dataコマンド使い方
LOAD DATA LOCAL INFILE '/var/lib/mysql-files/hoge.csv' INTO TABLE table FIELDS TERMINATED BY ',' ENCLOSED BY '"' IGNORE 1 LINES;
TERMINATED BY 区切り文字
ENCLOSED BY フィールドを囲むキャラクタ
IGNORE 1 LINES 何行importしないか
詳しいオプション