티스토리 뷰

시스템 서버

mysql 5.5 한글깨짐 해결

달리는개발자 2013. 8. 10. 03:22

mysql 5.5를 rpm으로 설치했더니 my.cnf 파일이 없습니다.

/usr/share/mysql 밑에 my-*.cnf 중 해당 서버에 맞는 파일을 복사합니다.

전 my-huge.cnf를 /etc/my.cnf로 복사했습니다.


/etc/my.cnf 를 아래 내용을 추가하여 charset 을 변경합니다.


[mysql]
default-character-set = utf8
 
[client]
default-character-set = utf8
 
[mysqld]
character-set-client-handshake=FALSE
init_connect="SET collation_connection = utf8_general_ci"
init_connect="SET NAMES utf8"
character-set-server = utf8
collation-server = utf8_general_ci
 
[mysqldump]
default-character-set = utf8


MySQL 서비스 재시작


service mysql restart



charset 확인


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/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)



이렇게 했는데 계속 한글이 제대로 입력이 안되서 검색해보니 기존에 만들어진 테이블은 지우고 다시 만들어야됩니다.

전 workbench에서 기존 테이블 생성문을 뽑아서 charset만 바꿔줬는데 테이블에만 charset 설정이 있는 줄 알았더니 컬럼에도 charset 설정이 있습니다 주의하세요~!! 


CREATE TABLE `test` (
  `pool_id` int(11) NOT NULL AUTO_INCREMENT,
  `pool_name` varchar(50) CHARACTER SET utf8 NOT NULL,
  PRIMARY KEY (`pool_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8


참고

MySQL 5.5 RPM을 사용한 설치

MySQL 5.5 charset connection

MySQL 5.5 jdbc 설정


Linux(CentOS 5.5) - MYSQL 설치하기

MySQL 한글 깨짐 현상 해결



반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함