ユーザ用ツール

サイト用ツール


mysql:setup

MySQL - 初期設定

文字コードの設定

デフォルトでは文字セットが Latin1 となっており、日本語が正しく扱えない。このため、文字セットをUTF8に変更しなければならない。以下のように /etc/my.cnf に文字セットを追記することで解決出来る。

[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
character_set_server=utf8
init-connect=SET NAMES utf8

#必要に応じて下記も加える
#skip-character-set-client-handshake

[mysqldump]
default-character-set = utf8
[mysql]
default-character-set = utf8

MySQLに入って確認。

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       | /usr/local/mysql-5.1.48-osx10.6-x86_64/share/charsets/ |
+--------------------------+--------------------------------------------------------+
8 rows in set (0.00 sec)

すべての character_set が utf8 になっている。

MySQL5.5の注意点

MySQL5.5からの仕様変更に伴い[mysqld]内で、

default-character-set = utf8

を指定するとMySQLを起動出来なくなるので、my.cnfから外しておく。
この場合でも以下を指定していれば文字コードはUTF8にセットされる。

character_set_server = utf8
mysql/setup.txt · 最終更新: 2018/06/25 09:40 by 127.0.0.1