블로그.지오닷컴

MySQL에서 UTF-8로 한글을 인코딩 했는데도 글자가 깨질 때 본문

노하우/웹서비스 개발

MySQL에서 UTF-8로 한글을 인코딩 했는데도 글자가 깨질 때

지오닷컴 2011. 3. 7. 04:16
같은 한글을 컴퓨터에서 인식하는데는 euc-kr과 utf-8 두가지 방식이 존재합니다. 왜 이렇게 되었는지는 이야기가 길어져서 생략하지만 결론적으로 utf-8이 더 최근의 방식이며 전 세계적으로 통용되는 문자 인코딩 방식 입니다.

최근 여러 사이트로 부터 데이터를 수집해서 보여주는 메타 사이트를 제작하는 과정에서 데이터를 RSS 2.0 기반으로 읽어왔습니다. 해당 RSS 내용을 토대로 데이터를 변환해서 우리 사이트의 DB에 저장을 하는데 UTF-8로 불러온 데이터임에도 불구하고 DB에 넣기만 하면 한글이 이상하게 보여졌습니다. 이 문제를 해결하기 위해 여러 과정을 거치다가 쿼리 안에도 인코딩 기준을 지정해줄 필요가 있음을 알게 되었습니다.

MySQL이 쿼리를 주고 받을 때의 인코딩을 설정하는 것은 매우 간단합니다. DB 연결 후 아래와 같이 쿼리를 날려주면 됩니다.

@mysql_query('set names utf8');


여러분에게도 많은 도움이 되기를 소망합니다. 다음에 또 찾아뵙겠습니다.
Comments