목표 환경은 DB를 utf8로 설정하는것임
기본적으로 table 속성은 DataBase 설정을 따라가는데
입력 데이터가 깨지면 아래 3번의 조치를 취한다. (AIX이런 경우를 봤다.)
0. 데이터를 콘솔에서 밀어넣을때는 콘솔 환경이 utf8이어야 함
# export LC_ALL=KO_KR.UTF-8
# export LANG=KO_KR.UTF-8
1. MySQL 접속 시 status명령으로 문자셋 확인
utf8이 아닐 때 설정하는 방식임
mysql> status;
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
2. my.cnf 환경설정
[mysqld]
default-character-set=utf8
init_connect=set collation_connection=utf8_general_ciex
init_connect=set names utf8
character-set-server=utf8
collation-server=utf8_general_ci
[mysqldump]
default-character-set=utf8
[mysql]
default-character-set=utf8
3. table 생성시 DEFAULT CHARSET설정
CREATE TABLE `TABLE_NAME` (
`seq_user` int(10) unsigned NOT NULL auto_increment,
`userid` varchar(30) NOT NULL default '',
PRIMARY KEY (`seq_user`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;