load data local infile で文字化け対応

MySQLのload data local infileの際に文字化けする対策
ポイントはcharacter_set_databaseパラメタを確認することでした

環境

  • MySQL 5.5.43
  • 文字コード utf8

テーブル作成

まずはUTF8でテーブルを作成します。なおデータベースエンジンにはInnodbを使用します

ファイルの確認

インポートするファイルの文字コードをUTF8にします

UTF8でない場合には以下のコマンドで変換します

データベースの設定

データベースの設定を確認します。なおmysqlコマンド起動時に –local-infile をつけないとload data local infileコマンドがエラーになります。5.5あたりからの仕様変更でしたっけ?

一時的に変更したい場合にはこちらのコマンドです。このセッションのみで有効です

インポート

それではインポートします

これで文字化けせずインポートできます