[스프링SPRING]MySQL DB 한글이 ?로 출력될때 워크벤치로 간단히 한글깨침 해결방법
사용중인 버전
내가 사용중인 버전은 아래와 같다. 기존에는 최신서버버전을 사용하고 있었으나 프로젝트때문에 다운그레이드했다.
스프링프로젝트를 하던 중 콘솔에는 한글이 깨짐없이 출력되나 DB에 ?
로 한글데이터가 깨져서 입력되어있었다.
이를 해결하기 위해 구글링 엄청나게 많이 한 뒤에 해결할 수 있었다.
다른 사람은 시간을 아끼길 바라며 적어본다… 또르르..
일단 현재 mySQL상태를 알아보자. cmd를 열어 아이디와 비번으로 로그인을 한 뒤 status를 입력한다.
빨간 부분을 보면 UTF-8이 아니다. 이럴 경우 한글이 깨질수 있으니 utf-8로 설정해줘야한다.
첫번째 시도 : my.iti
변경하기
구글링하면 가장 많이 발견할 수 있는 방법이 my.ini
변경방법이다.
아쉽게도 나는 C:\Program Files\MySQL\MySQL Server 5.6
경로에 my.ini
파일이 없었다.
두번째 시도 : MySQL Workbench로 해결하기
아래 이미지처럼 workbench에 접속하여 administration 탭을 클릭한 뒤
- status and system variables 클릭
- system variables클릭
cha
검색- character_set_client 부터 character_set_system까지 filesystem을 제외하고 다 utf8로 변경해준다.
- 따로 저장버튼은 없고 refesh 클릭
하지만 여전히 데이터입력시 ?
가 발생했다.
마지막 시도 : MySQL Workbench + my.iti
변경
2번째시도를 완료한 상태에서 숨김폴더인 C:\ProgramData\MySQL\MySQL Server 5.6
경로로 이동하여 숨겨진 my.iti
파일을 찾았다.
해당 파일에서 #SERVER SECTION
전까지를 아래 처럼 추가해주었다.
1 | [client] |
그 후 윈도우의 서비스 앱을 열어 (작업관리자 제일 마지막 탭 서비스) MySQL56
을 서비스 다시시작
을 클릭했다.
그랬더니 한글이 깨지지않고 DB에 들어와있다!
더이상의 물음표살인마는 없다!!!!