Windows環境のMySQLで、character_set_clientの値をutf8に変更できない

 

MySQLのバージョンは5.6.20。

Windowsの環境なのでmy.iniの[client]セクションに

default-character-set = utf8

を追記したのだが、character_set_clientやcharacter_set_connectionの値がutf8にならず、cp932のままになる。

mysql> show variables like ‘char%’;
+————————–+————————————————–+
| Variable_name | Value |
+————————–+————————————————–+
| character_set_client | cp932 |
| character_set_connection | cp932 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | cp932 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\PHP\pleiades\xampp\mysql\share\charsets\ |
+————————–+————————————————–+
8 rows in set (0.00 sec)

 
しばし黙考し、[mysqld]セクションの## UTF 8 Settingsで、”skip-character-set-client-handshake”のコメントアウトを解除していないことに気付いた。

コメントアウト解除、サーバ再起動後。

mysql> show variables like ‘char%’;
+————————–+————————————————–+
| Variable_name | Value |
+————————–+————————————————–+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\PHP\pleiades\xampp\mysql\share\charsets\ |
+————————–+————————————————–+
8 rows in set (0.01 sec)

 
できた。