본문 바로가기

Computer

config mysql character encoding

서버의 기본 encoding type 을 설정

config file: /etc/my.cnf
[mysqld]
character-set-server=utf8

config file: /etc/my.ini
[mysqld]
default-character-set=utf8


CHECK server variables
mysql> show variables like 'c%';
+--------------------------+----------------------------+
| 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/share/mysql/charsets/ |
| collation_connection     | utf8_general_ci            |
| collation_database       | utf8_general_ci            |
| collation_server         | utf8_general_ci            |
| completion_type          | NO_CHAIN                   |
| concurrent_insert        | AUTO                       |
| connect_timeout          | 10                         |
+--------------------------+----------------------------+

정상적으로 설정된 경우 모든 character_set* 갑과 collation_* 값이 모두 utf8* 로 설정 된다.
어느 하나라도 latin1 이나, euckr 로 되어 있으면 utf8 문자가 깨질 수 있다.