반응형
mysql 서버를 구성하고 웹에서 데이터를 조회해오는데 문제없이 잘 가져오다가
빈 컬럼이거나 NULL이 들어가있으면 Case When문구를 활용하여 치환하는 query가 있었는데
툴로 조회할때는 문제가 없지만, mybatis를 통해 조회할때만 문제가 되었다.
처음 의심한 곳은 mapper의 xml 인코딩이 깨졌을꺼라 생각했지만 문제없이 UTF-8 처리였다.
SET CHARACTER SET UTF8;
해당 쿼리를 던지고 조회하면 수정이 된다고해서 처리하였지만 동일한 증상이 발생하였고,
mysql -u root -p
비밀번호 입력
접속하여 status로 서버쪽 언어 인코딩 상태를 확인해보니 latin1로 조회되었다.
서버쪽 인코딩이 안맞는것으로 판단하여 mysql 설정파일인 my.ini를 열어
mysqld라인에 character-set-server=utf8 를 입력하였다.
[mysqld]
character-set-server=utf8
서비스에서 mysql 재기동 후 정상적으로 치환하여 보여지는것을 확인했다.
반응형