Database
2017.12.01 01:50
[mysql] MySQL 한글 깨짐 현상 해결하기(UTF8)
조회 수 5480 댓글 0
MySQL DB에 값을 입력하거나 백업(dump) 파일을 복원할 때 한글 값이 제대로 저장되지 않는 경우가 있다. 이런 경우 대부분 character set 설정문제이며 UTF-8로 설정하면 쉽게 고칠 수 있다.
MySQL 설치 기본 상황
- latin1으로 Character-Set이 설정되어있다.
- 한글을 사용하기 위해서는 UTF-8로 변경하면 사용할 수 있다.
MySQL 한글 깨짐 현상 해결하기
- 한글을 저장하면 아래와 같은 ??? 형태의 모습을 볼 수 있다.
+---+-----+
|id |name |
+---+-----+
|1 |??? |
|2 |??? |
+---+-----+
설정파일 변경하기
- /etc/mysql/my.cnf 파일 변경하기
- 파일의 경로는 플랫폼에 따라 다를 수 있다.
# 추가 해줘야 할 내용
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
기존의 만들어져있던 Database나 Table들의 Character-Set이 변경되는 것은 아니므로 직접 변경을 해줘야 한다.
# 기존의 Database의 Character-Set 속성 변경하기
mysql> ALTER DATABASE [DB명] DEFAULT CHARACTER SET utf8;
# 현재 Character-Set 확인하기
mysql> show variables like ‘c%’
mysql> status
# MySQL 재시작하기
[root@hooni ~]# service mysql restart
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
909 | Develop | [c] 격자 직사각형 넓이 구하기 | hooni | 2013.04.23 | 7457 |
908 | Develop | [c] 공용체를 이용해 MSB를 LSB로 변환 | hooni | 2013.04.23 | 9377 |
907 | Develop | [c] 관계형 연산자에 대한 설명 | hooni | 2013.04.23 | 7667 |
906 | Develop | [c] 구구단 최단라인 ㅡㅡ; | hooni | 2013.04.23 | 8004 |
905 | Develop | [c] 구조체 배열 예제 (학생 성적 계산) | hooni | 2013.04.23 | 7669 |
904 | Develop | [c] 구조체/파일 입출력 프로그램 | hooni | 2003.04.23 | 7063 |
903 | Develop | [c] 구조체의 설명과 예제.. | hooni | 2003.04.23 | 8373 |
902 | Develop | [c] 그래픽 차트 라이브러리.. 나중에 확인 해볼 거.. | hooni | 2013.04.23 | 8225 |
901 | Develop | [c] 그래픽스 자료(OpenGL 라이브러리) 샘플 소스 | hooni | 2003.04.23 | 10183 |
900 | Develop | [c] 근의 공식으로 2차방정식 풀기.. | hooni | 2003.04.23 | 7777 |
899 | Develop | [c] 기막힌 정렬 코드 ㅋㄷ | hooni | 2015.10.13 | 816 |
898 | Develop | [c] 기본 자료형(int)이 표현할 수 없는 큰 수(Big number)를 덧셈하는 코드. 1 | hooni | 2013.04.23 | 13457 |