My開発メモ

MAMPでのMySQL文字コードをutf8mb4に設定する

MAMPのMySQLでの文字コードをutf8mb4に設定する。

今回インストールしたMAMPは以下である。

XAMPPだと、特に設定しなくても utf8mb4 になったが、MAMPは設定しなければならない。

変更前

インストールした直後の設定ファイルは以下であった。

my.ini

...(省略)...
character-set-server=utf8
collation-server=utf8_general_ci
...(省略)...
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:\MAMP\bin\mysql\share\charsets\ |
+--------------------------+-----------------------------------+

変更後

これを以下に変えた。

my.ini

...(省略)...
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
...(省略)...
mysql> show variables like '%char%';
+--------------------------+-----------------------------------+
| Variable_name            | Value                             |
+--------------------------+-----------------------------------+
| character_set_client     | cp932                             |
| character_set_connection | cp932                             |
| character_set_database   | utf8mb4                           |
| character_set_filesystem | binary                            |
| character_set_results    | cp932                             |
| character_set_server     | utf8mb4                           |
| character_set_system     | utf8                              |
| character_sets_dir       | C:\MAMP\bin\mysql\share\charsets\ |
+--------------------------+-----------------------------------+

他のPC(Ubuntu)からログインすると・・・

$ mysql -u XXXX -p -h 192.168.1.11
password: XXXXX

として、他のPC(Xubuntuマシン)からログインしてみたら、以下のようであった。

MySQL [(none)]> show variables like '%char%';
+--------------------------+-----------------------------------+
| Variable_name            | Value                             |
+--------------------------+-----------------------------------+
| character_set_client     | utf8mb4                           |
| character_set_connection | utf8mb4                           |
| character_set_database   | utf8mb4                           |
| character_set_filesystem | binary                            |
| character_set_results    | utf8mb4                           |
| character_set_server     | utf8mb4                           |
| character_set_system     | utf8                              |
| character_sets_dir       | C:\MAMP\bin\mysql\share\charsets\ |
+--------------------------+-----------------------------------+

これで問題ないように思う。

参考

このサイトによると、上記の設定で問題ないように思う。

カテゴリー: memo, mysql

タグ: mamp, mysql, utf8, utf8mb4

カウント: 253