MySQL 캐릭터셋 utf8 설정

(Toad for MySQL 엑셀 import 한글 깨짐 해결에서 넘어옴)
MySQL 캐릭터셋 utf8 설정
Toad for MySQL 엑셀 import 한글 깨짐 해결
Toad for MySQL 엑셀 import utf8

1 문제 상황[ | ]

  • MySQL 클라이언트에서 한글이 물음표로 출력됨
  • 또는 Toad for MySQL에서 엑셀 파일을 import하면 한글이 물음표로 바뀜
[root@zetawiki ~]# mysql -uroot -pP@ssw0rd mydb
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4828
... (생략)
mysql> SELECT * FROM department;
+----+------+
| id | name |
+----+------+
|  1 | ???  |
|  2 | ???  |
+----+------+
2 rows in set (0.00 sec)

2 환경변수 확인[ | ]

mysql> show variables like 'char%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | latin1                     |
| character_set_connection | latin1                     |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | latin1                     |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

mysql> quit
Bye
→ latin1들이 있는데 utf8로 바꾸고 싶다.

3 my.cnf 수정[ | ]

  • my.cnf 파일 하단에 내용 추가
[root@zetawiki ~]# vi /etc/my.cnf
[client]
default-character-set=utf8

4 MySQL 환경변수 재확인[ | ]

[root@zetawiki ~]# mysql -uroot -pP@ssw0rd mydb
Welcome to the MySQL monitor.  Commands end with ; or \g.
... (생략)
mysql> show variables like 'char%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
→ character_set_database 와 character_set_server 를 제외하고 변경되었다.

5 쿼리결과 확인[ | ]

mysql> SELECT * FROM department;
+----+-----------+
| id | name      |
+----+-----------+
|  1 | 영업팀    |
|  2 | 개발팀    |
+----+-----------+
2 rows in set (0.00 sec)
  • Toad for MySQL에서도 엑셀파일을 import하니 한글이 깨지지 않고 정상적으로 입력되었다.

6 같이 보기[ | ]

7 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}