워크벤치(Workbench 6.3)에서 UTF-8설정하기(글자깨짐 방지)
Workbench에서 DB생성 후, CSV파일로 데이터를 DB에 Import했을 경우, 한글이나 일본어, 기타 언어가 깨져서 보이지 않는 경우가 발생한다.
해당 필드의 Collation의 설정을 UTF-8로 변경을 해 봐도 깨지고, CSV파일의 내용을 UTF-8로 설정을 해 봐도 깨진다. 무지함에서 오는 이 답답함을 해결하고자 구글링해본 결과 이하 내용으로 해결 할 수 있었다. 와~~개운해~
참고로 난, 소프트웨어 개발자는 아니다.
단지, 업무적으로 DB를 구축해서 필요한 어플리케이션을 만들고자, 최대한 저렴하게 구글링으로, 배워가면서 해 보고자 한다. 난!! 할 수 있어!~~
*글자깨짐이 발생할 경우, 왜 UTF-8로 변경해야 하는 지? 이유에 대해서는 각자 구글링으로 알아보세요~^^
*글자깨짐이 발생할 경우, 왜 UTF-8로 변경해야 하는 지? 이유에 대해서는 각자 구글링으로 알아보세요~^^
이하 부터, Workbench를 UTF-8로 변경하는 방법에 대한 기술이다.
참고하도록~
1. 먼저, 설치되어 있는 Workbench의 캐릭터 셋 설정값을 확인하자!!
Workbench의 좌측 단 메뉴에서 Management -> "Status and System Variables"를 선택한다. 그러면 위 그림과 같은 창이 표시된다.
여기서, System Variables의 텍스트 창에 "Character"를 입력하고 검색 해 보자!
그러면, 이하와 같이, 현재 설정되어 있는 캐릭터 셋의 현재설정에 대한 정보가 표시된다.
난, 이미 UTF-8로 설정을 했기에 Client, connection, database등이 UTF-8로 설정되어 있음을 알 수 있다. 이렇게 설정되어 있기 전에는 EUC-KR로 설정되어 있었을 것 이다.
따라서, Workbench의 Character를 EUC-KR에서 UTF-8로 변경을 하게 되면, 글자깨짐 문제는 해결!! ㅋㅋㅋ
변경방법은 이하와 같다. 아주 간단하다.
먼저, Workbench가 설치되어 있는 폴더로 진입해 보자!
(Program폴더 -> Mysql -> Mysql Server)
그러면, My-default.ini라는 파일이 하나가 존재할 것이다.
이 파일의 내용만 수정해 주고, Workbench를 다시 종료해서 다시 기동만 시켜주면 끝이다!!
텍스트 편집기로 ini파일 열어, 이하의 내용을 추가해 넣고, "my.ini" 파일명으로 만들어 넣자!("my-default.ini" 파일은 workbench가 참조하지 않음. "my.ini"로 파일명을 변경해야 지만, workbench가 기동 시 참조할 수 있음.)
#--- my.ini파일내용 시작---
[client]
default-character-set = utf8
[mysqld]
character-set-client-handshake = FALSE
init_connect = "SET collation_connection = utf8_general_ci"
init_connect = "SET NAMES utf8"
character-set-server = utf8
collation-server = utf8_general_ci
[mysqldump]
default-character-set = utf8
[mysql]
default-character-set = utf8
#---my.ini파일내용 끝---
상기까지 완료했다면, Workbench를 다시 기동시키고, Sever Variables에서 "Character"로 다시 검색해 보면, Character set이 전부 UTF-8로 설정이 변경되어 있음을 알 수 있을 것이다.
이 상태에서, CSV파일을 DB에 Import한 후, Select해 보면... 짜잔!! 글자 깨짐이 1도없이 잘 보일 것이다.
기타 #01, cmd창에서 Set쿼리로 UTF-8로 설정은 할 수 있으나, Workbench를 다시 기동하고 나면 원래의 설정 상태로 복귀되어 버리니.. 임시적인 방법일 뿐... 도움이 1도 안되니 참고할 것!!
기타 #02, cmd창에서 Character set 값 확인하는 방법!!
mysql> show variables like 'c%';
기타 #03, cmd창을 UTF-8로 설정하는 방법!!
C:\> chcp 949
여기서, System Variables의 텍스트 창에 "Character"를 입력하고 검색 해 보자!
그러면, 이하와 같이, 현재 설정되어 있는 캐릭터 셋의 현재설정에 대한 정보가 표시된다.
난, 이미 UTF-8로 설정을 했기에 Client, connection, database등이 UTF-8로 설정되어 있음을 알 수 있다. 이렇게 설정되어 있기 전에는 EUC-KR로 설정되어 있었을 것 이다.
따라서, Workbench의 Character를 EUC-KR에서 UTF-8로 변경을 하게 되면, 글자깨짐 문제는 해결!! ㅋㅋㅋ
변경방법은 이하와 같다. 아주 간단하다.
먼저, Workbench가 설치되어 있는 폴더로 진입해 보자!
(Program폴더 -> Mysql -> Mysql Server)
그러면, My-default.ini라는 파일이 하나가 존재할 것이다.
이 파일의 내용만 수정해 주고, Workbench를 다시 종료해서 다시 기동만 시켜주면 끝이다!!
텍스트 편집기로 ini파일 열어, 이하의 내용을 추가해 넣고, "my.ini" 파일명으로 만들어 넣자!("my-default.ini" 파일은 workbench가 참조하지 않음. "my.ini"로 파일명을 변경해야 지만, workbench가 기동 시 참조할 수 있음.)
#--- my.ini파일내용 시작---
[client]
default-character-set = utf8
[mysqld]
character-set-client-handshake = FALSE
init_connect = "SET collation_connection = utf8_general_ci"
init_connect = "SET NAMES utf8"
character-set-server = utf8
collation-server = utf8_general_ci
[mysqldump]
default-character-set = utf8
[mysql]
default-character-set = utf8
#---my.ini파일내용 끝---
상기까지 완료했다면, Workbench를 다시 기동시키고, Sever Variables에서 "Character"로 다시 검색해 보면, Character set이 전부 UTF-8로 설정이 변경되어 있음을 알 수 있을 것이다.
이 상태에서, CSV파일을 DB에 Import한 후, Select해 보면... 짜잔!! 글자 깨짐이 1도없이 잘 보일 것이다.
기타 #01, cmd창에서 Set쿼리로 UTF-8로 설정은 할 수 있으나, Workbench를 다시 기동하고 나면 원래의 설정 상태로 복귀되어 버리니.. 임시적인 방법일 뿐... 도움이 1도 안되니 참고할 것!!
기타 #02, cmd창에서 Character set 값 확인하는 방법!!
mysql> show variables like 'c%';
기타 #03, cmd창을 UTF-8로 설정하는 방법!!
C:\> chcp 949
댓글
댓글 쓰기