LOAD DATA INFILE "The used command is not allowed with this MySQL version"

LOAD DATA INFILE は安全上の理由でデータベース ディレクトリからの読み込みしか行えない。絶対パスでファイルを指定するには LOCAL を指定しても。毎度忘れてハマる。

LOAD DATA LOCAL INFILE "/path/to/datafile.txt" INTO TABLE db.table;

LOCAL を指定してもうまくいかない場合は、ローカルファイルの指定を無効にされている場合があるため、--local-infile を指定して実行するとうまくいく。

% mysql --local-infile -uuser -ppassword -e 'LOAD DATA LOCAL INFILE "/path/to/datafile.txt" INTO TABLE db.table'

http://stackoverflow.com/questions/10762239/enable-load-data-local-infile