Major Study./Computer Science
MySQL에서 글자 깨짐 현상
sosal
2016. 3. 22. 19:58
반응형
/*
* http://sosal.kr/
* made by so_Sal
*/
서버에서 관리를 할 때, 데이터베이스 encoding (character set)이 UTF8로 설정되어있지 않은 경우가 있다.
이미 만들어져 있는 디비에서 select 쿼리를 이용하여 데이터를 보는데, 다 깨져있을 경우에 위와 같은 상황일 확률이 높다.
예를 들면 다음의 상황이다.
mysql> select member_id, name, date, time from member limit 10;
이렇게 정보를 출력하는데, 인코딩 문제 때문에 알아볼 수 없는 경우가 있다.
이런 경우, 도대체 어떤 인코딩 설정으로 되어있기에, 이렇게 보이는 것일까?
답은 character set에 있다.
MySQL 커맨드에서 다음과 같이 입력하면 현재의 character set을 볼 수 있다.
mysql> show variables like 'c%';
위의 결과에 따라서 지금까지 latin1이라는 character set으로 내용이 출력되었다.
이 데이터를 UTF8 형태로 출력만 하게 한다면 문제 없이 동작 할 것이다.
mysql> set names utf8;
mysql> select member_id, name, date, time from member limit 10;
- 인코딩이 잘 맞춰져서 데이터가 나오는 결과화면