본문 바로가기
IT 실무/데이터베이스

[MySQL] 한글이 깨지는 문제

by 지식id 2012. 12. 1.
반응형

mysql을 설치 후 처음 사용하려다 보면 기본 collation이 latin1_swedish_ci로 되어 있어 한글이 깨지는 경우가 있다.

기본 character set 및 collation을 바꾸려면 my.cnf (우분투 12.04기준 /etc/mysql/my.cnf)파일을 열어서

[mysqld] 부분에 아래 두 줄을 추가 해 준다. (UTF-8기준)

character_set_server = utf8
collation_server = utf8_general_ci

배포판에 따라서 언더바(_)를 사용하기도 하고 그냥 바(-)를 사용하기도 하는데 레드햇 계열은 그냥 바, 데비안 계열은 언더바인 경우가 많다.

일단 두 줄을 추가 해 주면 기본 세팅은 바뀌는데 모든 세팅이 utf-8로 되어 있는데도 불구하고 한글이 깨질 경우 아래 코드를 추가 해 준다.

skip_character_set_client_handshake

클라이언트와 악수를 한다. 결국 클라이언트의 문자셋을 기준으로 동기화 시킨다는 말인것 같은데..
그걸 "스킵" 한다는 것이다. 결국 클리이언트쪽은 무시하고 서버의 세팅만 따르라는 뜻이다. 왜 클라이언트의 문자셋이 여전히 latin, swedish인지 모르겠으나.. 그냥 다들 안되면 습관처럼 넣어 주는 코드이니 참고하자.

반응형

댓글