-
윈도우10에서 MySQL 캐릭터셋 UTF8로 변경하기MySQL 2016. 7. 21. 22:00
삽질은 나를 힘들게 한다..
언젠가는 좀 더 쉽게 문제를 해결하는 날이 오겠지..
Windows 10 에 MySQL 5.7을 설치했다.
책에서 character set 을 utf8 로 설정한다고 되어 있는데, 책에 나온대로 똑같이 따라했는데도 불구하고 euckr 로 되어있어 이를 바꾸려 했다. 간단해 보이는 이 작업이 2시간여 나를 괴롭혔다..
mysql> status
--------------
mysql Ver 14.14 Distrib 5.7.13, for Win64 (x86_64)
Connection id: 3
Current database:
Current user: repacat@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.7.13-log MySQL Community Server (GPL)
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: utf8
Db characterset: utf8
Client characterset: euckr
Conn. characterset: euckr
TCP port: 3306
Uptime: 7 min 33 sec
Threads: 1 Questions: 10 Slow queries: 0 Opens: 108 Flush tables: 1 Open tables: 101 Queries per second avg: 0.022
--------------
mysql>
문제해결에 아래 블로그가 가장 유용했다.
http://blog.daum.net/bang2001/91
http://blog.daum.net/bang2001/98
1. 윈도우에서는 환경설정 파일이 my.ini 이다. my.cnf 가 아니다.
2. 환경설정 파일의 위치는 아래와 같다.
C:\Program Files\MySQL\MySQL Server 5.7
3. my-default.ini 를 기반으로 my.ini 파일을 만들어야 한다.
my-default.ini 는 예제로 사용하라고 들어있는 파일이다.
4. my.ini 를 수정하려면 권한을 줘야한다.
5. my.ini 에 아래 내용을 추가한다. UTF8 로 설정한다는 내용이다.
#################################################
# Chatset Setting
#################################################
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
init_connect=SET collation_connection=utf8_general_ci
init_connect=SET NAMES utf8
[mysql]
default-character-set=utf8
#################################################
* my-default.ini 에 있는 내용도 들어있어야 한다.
6. MySQL 서비스를 중지, 시작한다.
Ctrl + Shift + Esc 키를 눌러 작업관리자를 띄운 후 서비스 탭을 선택한다.
MySQL57 을 찾아서 중지, 시작을 해준다.
7. MySQL 콘솔로 들어가서 확인해본다.
mysql> status
--------------
mysql Ver 14.14 Distrib 5.7.13, for Win64 (x86_64)
Connection id: 3
Current database:
Current user: repacat@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.7.13-log MySQL Community Server (GPL)
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
TCP port: 3306
Uptime: 1 min 58 sec
Threads: 1 Questions: 5 Slow queries: 0 Opens: 108 Flush tables: 1 Open tables: 101 Queries per second avg: 0.042
--------------
mysql>
MySQL 콘솔로 들어가는 것도 이번에 처음 해보았다. 두가지 방법이 있는데, MySQL Workbench 에서 Start Command Line Client 를 하던가 커맨드 창을 실행해서 접속할 수 있다. 커맨드 창을 통해 접속하는 방법은 아까 소개한 블로그에 자세히 나와있으니 참고하길 바란다.