개요
새로운 Egov 프로젝트를 받아 테스트를 해보던 중 쿼리 실행 시 한글이
물음표(?)로 깨지는 오류가 발생했습니다.
이유
해당 문제는 DB의 인코딩 문제입니다.
해결법
인코딩을 UTF-8이나 한글을 인식할 수 있는 유니코드로 바꿔줘야 합니다.
쿼리로 해결할 수 있지만 일시적이기 때문에 my.ini 파일을 수정해 영구적으로 변경해 주겠습니다.
- DB 폴더의 data로 이동해 my.ini 파일을 열어줍니다.
( 윈도 검색창에 mysql 검색 후 폴더위치 열기로 열어줘도 찾을 수 있습니다 )
my.ini 파일을 메모장으로 열면 다음과 같습니다.
( 현재 my.ini 파일의 내용은 달라도 상관없습니다.)
- my.ini 파일에 다음 내용을 추가해 주고 저장해 줍니다.
[mysqld] .. #하단추가 init_connect="SET collation_connection = utf8_general_ci" init_connect="SET NAMES utf8" character-set-server = utf8 collation-server = utf8_general_ci [client] .. #하단추가 default-character-set = utf8 [mysqldump] .. #하단추가 default-character-set = utf8 [mysql] .. #하단추가 default-character-set = utf8
수정된 my.ini 내용은 이렇습니다 - db 재실행
DB 재실행 방법은 다음 링크를 참고해 주세요.
https://junhere.tistory.com/11
문제 해결
이제 언어 셋을 보면 UTF-8로 변경된 것을 확인할 수 있습니다.
쿼리를 실행해 주면 정상적으로 한글이 저장됩니다.
728x90
'Database > MySQL & MariaDB' 카테고리의 다른 글
[MySQL & MariaDB] Windows MySQL & MariaDB 재시작 (0) | 2024.03.19 |
---|