DB/MySQL

character_set_server 설정

linuxism 2012. 4. 5. 15:32


1. 확인
 - mysql> status
 - characterset 확인

2. 수정
 - /etc/my.cnf
 - 각각 내용에 맞게 수정

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
# 인코딩이 제대로 설정이 안될경우 아래로 대체함
#collation-server=utf8_unicode_ci

init_connect=SET collation_connection=utf8_general_ci
init_connect=SET NAMES utf8

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8


3. 테이블 인코딩 확인
 - mysql> show table status

4. 테이블 인코딩 변경
 - mysql> ALTER TABLE 테이블명 CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;

출처 : http://gayafoundation.blogspot.com/2011/03/mysql-unicode-incorrect-string-value.html,http://woolab.net/140121564550, http://blog.daum.net/iamwhoi/5740155



===================================================================================


수동 실행 시 옵션

#./bin/mysqld_safe --datadir=/usr/local/mysql/data --character-set-server=utf8 &



정상 동작 my.cnf 예제

[mysqld]

init_connect=SET character_set_server=utf8

init_connect=SET collation_connection=utf8_general_ci

init_connect=SET NAMES utf8

character-set-server=utf8

collation-server=utf8_general_ci


[client]

default-character-set=utf8


[mysql]

default-character-set=utf8


[mysqldump]

default-character-set=utf8