APMSETUP MySQL encoding Korean

1 minute read

저는 apmsetup을 통해 MySQL 서버와 아파치 서버를 관리하고 있습니다.

DB에 한글 데이터를 저장하고 나면 phpMyAdmin에서 확인해볼때 ???로 나타나더군요.

table이나 database 세팅을 해주면 될거라고 생각했는데 그대로더라구요.

구글링해보고 이 한글 깨짐 현상을 해결하는 과정을 기록합니다.

MySQL 설정 파일인 my.ini라는 파일에서 수정을 해주는 것인데요,

본래 이 파일의 위치는 2010버전의 apmsetup7을 다운받으신 경우엔 C:\APM_Setup\Server\MySQL5\data 였을겁니다.

하지만 복사해서 옮겨붙여넣어주실건데요, C:\APM_Setup\Server\MySQL5에 my.ini 파일을 복사, 붙여넣기 해주시면됩니다.

그 다음,

my.ini라는 파일 내 [client] 부분에 아래 내용을 추가해줍니다.

default-character-set=utf8


그 다음 역시my.ini라는 파일에서 이번엔 [mysqld] 부분에 아래 내용을 추가해줍니다.

init_connect = SET collation_connection = utf_general_ci
init_connect = SET NAMES utf8
character-set-server = utf8
collation-server = utf8_general_ci


그 다음도 마찬가지로 my.ini라는 파일에서 이번엔 [mysqldump] 부분에 아래 내용을 추가해줍니다.

default-character-set = utf8


설정을 변경하였으니 정상적으로 적용될 수 있도록 아파치와 MySQL을 껐다가 다시 켜고, 이미 저장을 하면서 데이터가 손상되었을 수 있으니 데이터 자체를 아예 삭제하고 새롭게 추가해 확인해보겠습니다.
새롭게 DB 또는 table을 만들어줄 때에도 마찬가지로 collation 설정을 utf8_general_ci로 설정하시기를 권장합니다!

이제 한글이 깨지지 않고 잘 나타나는 것을 확인하실 수 있을 겁니다.

혹시나 미리 만들어뒀던 데이터베이스나 테이블 등 삭제하고 다시 생성하기가 난감한 상황이라면, 아래와 같은 질의어를 통해 기존 내용을 수정할 수도 있다고 합니다.

ALTER DATABASE 데이타베이스_이름 CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE 테이블_이름 CHARACTER SET utf8 COLLATE utf8_general_ci;



개인이 공부하고 포스팅하는 블로그입니다. 작성한 글 중 오류나 틀린 부분이 있을 경우 과감한 지적 환영합니다!

Categories:

Updated: