ConEmu とMySQL で文字コードをUTF-8に統一
ConEmu とMySQL で文字コードをUTF-8に統一
環境
ConEmu の文字コード変更
ConEmu(cmd) の文字コードの変更方法は以下にまとめました。
XAMPPのMySQLをコマンドプロンプト(ConEmu)から操作する場合
XAMPP Control Panel を開いて、 「Modules Service」の中のModule「MySQL」をインストールしておく。
コマンドプロンプト上からMySQLを起動する場合は、以下のコマンド。
net start mysql
ログインする場合は以下のコマンド。
mysql -u <user_name> -p
MySQL の文字コードを変更
設定ファイル C:\xampp\mysql\bin\my.ini
をいじる。
UTF 8 Settings の項目がコメントアウトされているので、 有効にする。
## UTF 8 Settings
init-connect=\'SET NAMES utf8\'
collation_server=utf8_unicode_ci
character_set_server=utf8
skip-character-set-client-handshake
character_sets-dir="C:/xampp/mysql/share/charsets"
MySQLを再起動・ログインして、 以下のコマンドで文字コードを確認できる。
show variables like "chara%";
character_set_filesystem
以外が utf8 になっていればutf8 で統一されている。
注意
文字コード変更前にcreate したdatabase, table は、 変更前の文字コードで扱われるので、 drop database <database_name> ;
で消してから、もう一度作りなおす。
環境の文字コードは変えずに、一部のdatabase とtable のみの文字コードを変える場合
create database
とcreate table
の後ろに、 character set 'utf8'
を追加する。
create database <database_name> character set 'utf8';
create table <table_name>(<colum_name1>, <colum_name2>, ...) character set 'utf8';
面倒臭いが、おまじない的に毎回入れておけば、 文字コードの心配が無くなる。
参考:mysqlでの文字コード関連がわかってなくてワロタ - ITの隊長のブログ
参考リンク