* 이곳은 제가 운영과 개발을 하면서 겪은 경험(삽질!?)과 지식을 개인적으로 정리하고 기록하는 공간입니다.

* 다른 누군가는 저와 같은 삽질을 하지 않기를 바라면서 조금씩 공유해봅니다.

MariaDB
2018.06.17 12:54

데이터 insert 시 한글깨짐현상

조회 수 3869 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄

mysql&mariadb는 캐릭터셋이 database, table, column으로 세분화해서 관리된다.

 

개발서버에서 생성한 DB의 캐릭터셋이 아래와 같이 되어 있어서 데이터 insert 시 한글이 깨지는 현상이 발생한다.

 

database : latin1

table&column : utf8

 

아래와 같은 절차로 database도 utf8로 변경하니 한글깨짐 없이 insert가 잘 된다.

 

참고로 centos7 버전에서의 서비스재시작 명령어는 service가 아니가 systemctl을 써야 한다.

 

------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

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

 

 


 

[출처] https://hooni.net/86661

 
?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
36 APM APM SETUP 7 Monitor 시작 시 Apache2 시작안되는 현상 file 오토소장 2018.05.03 482
35 XE xe api모듈 구글크롬 콘솔 및 jquery를 이용하여 json 포맷 테스트 file 오토소장 2018.05.04 197
34 XE XE 회원가입 후 "권한이 없습니다"와 로그인 안되는 현상 오토소장 2018.05.12 150
33 XE xe 개발서버 백업이전 후 나타나는 문제및해결 오토소장 2018.05.12 336
32 리눅스 centOS7 IP고정시키기 오토소장 2018.05.14 254
31 XDebug php 디버깅 환경 구성 오토소장 2018.05.22 154
30 MariaDB mariaDB 및 Mysql 외부IP 접속허용 오토소장 2018.05.24 135
29 VisualStudio vc msbuild cmd.exe code 1 오류.. 오토소장 2018.05.28 139
» MariaDB 데이터 insert 시 한글깨짐현상 오토소장 2018.06.17 3869
27 XE 관리자메뉴 > 사이트메뉴편집 아무것도 안보이는 현상 file 오토소장 2018.06.17 127
26 Android 블루스택3 멀티실행 개수 제한 file 오토소장 2018.07.25 385
25 VisualStudio vs2017 다이얼로그 편집 시 resource.h 깨지는 현상 오토소장 2018.08.04 518
24 리눅스 리눅스 로그인접속 느림현상 해결방법 오토소장 2018.09.13 310
23 XE 게시글에 파일 첨부시 "파일 또는 디렉터리를 생성 할 수 없습니다." 라는 메시지가 뜰 때 해결방법 오토소장 2018.09.21 421
22 AutoHotkey RegExMatch() 명령어로 년월일 출력하기 오토소장 2018.10.03 138
21 VC++ mfc combobox 리스트 높이 늘리기 (droplist/dropdown) 오토소장 2019.01.23 429
20 JavaScrpt WScript.Shell 경로에 공백 포함 오류 오토소장 2019.02.13 153
19 PHP 파일업로드용량변경 오토소장 2019.06.01 109
18 XE 일반사용자가 게시글등록 중 iframe Tag Filter 되어 짤리는 현상 secret 오토소장 2019.06.01 0
17 Oracle 대량 insert문 오토소장 2019.07.03 217
목록
Board Pagination Prev 1 2 Next
/ 2