Windows環境のMySQLで、character_set_clientの値をutf8に変更できない
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)
できた。