본문 바로가기
IT 전산/DB

Mysqldump로 백업 이후 복구 시 한글 깨짐 현상

by 멍뭉부 2023. 9. 7.
728x90

1. mysqldump 받은 백업 sql 파일이 정상적으로 한글로 보이는지 확인

정상적으로 한글로 보인다면 백업은 정상적으로 받은 것

* 만약 dump 받은 백업파일에서 한글이 정상적으로 보이지 않을 경우

아래 명령어처럼 포맷 옵션을 붙여서 덤프 떠야함

mysqldump -uroot -p --default-character-set=utf8 db > backup.sql

[한글 정상확인]

2. 복구할 mysql 서버의 현 characterset 설정 확인.

* 만약 UTF8이 아닌 latin1 로 되어있는게 있다면 my.ini 설정 변경이 필요함.

 

[My.ini 설정 변경이 필요할 경우]

각각 client, mysql, mysqld, mysqldump 란에 character 설정값을 넣어줘야함

<my.ini 파일 내>

[client]

default-character-set=utf8

 

[mysql]

default-character-set=utf8

 

[mysqld]

default-character-set=utf8

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

 

[utf8 정상 확인]

3. 이래도 한글이 깨져서 복구된다면, 복구할때 characterset을 설정하면서 복구

mysql -u root -p --default-character-set=utf8 db < backup.sql

3번까지 완료하였다면 더 이상 DB쪽에서는 할꺼 다하지 않았나.. 라는 생각..

웹 단에서도 확인을 해볼 필요가 있다.

[jdbc 연동시 character 설정]

jdbc.url=jdbc:mysql://localhost:3306/DB?useUnicode=true&characterEncoding=utf8

728x90