mysqldumpして取得したテーブルのcsvを別のmysqlにLOAD DATA INFILEでインポートしたのですが、90万行ぐらいあるレコードのうち、122行しか読まれませんでした。(csvにはきちんと読み込まれているのを確認してあります。)
叩いたコマンドは以下のとおりです。
LOAD DATA LOCAL INFILE '/vagrant/data1.csv' into table SampleTable FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\';
この原因はどのようなことが考えられるでしょうか。なお、このcsvは別のLinux機からとったもので、windowsマシン上で作られたものではないので、
LINES
TERMINATED BY '\r\n'
の話とは関係ないと思われます。(実際このキーワードを付けると、インポートは1件のみしかできませんでした)
あと、selectを叩くと、日本語の部分が文字化けしていたため、
show variables like "chara%";
を実行すると、案の定latin1の項目があったため、my.cnfを書き換えて、現在はlatin1の項目がないことを確認してあります。日本語が???となってしまうのですが、これはどのように対処すべきでしょうか。
追記1:なお、mysqld.logが吐かれるようにmy.cnfを書き換えたのですが、特にLOAD FILEに関するエラー等は出ておりませんでした。
追記2:用いたcsvの文字コードはutf8でした。
[vagrant@localhost vagrant]$ nkf -g data1.csv
UTF-8 (LF)
追記3:mysqlのバージョンは5.6.20です。