맛동산

Spring on AWS - MariaDB charset 변경 본문

Web/AWS

Spring on AWS - MariaDB charset 변경

오지고지리고알파고포켓몬고 2017. 8. 3. 15:20

파이썬으로 감성사전 초기화 도중 Incorrect string value 어쩌구 하는 경고를 만났는데

MariaDB의 초기 encoding형식이 한글을 입력할 수 없는 것으로 설정 되어있어서 발생하는 문제였다.



우선 global 설정을 빠르게 설명하자면, MariaDB에 접속해서 아래 명령어를 입력하면 몇가지 항목이 latin1로 설정되있는 것을 볼 수 있다.


> show variables like 'c%';


그럼 다시 /etc/mysql/my.conf에 들어가서 얼추 중간 쯤 [mysqld]어쩌구 하는 항목이 있는데 밑에 character_set부분을 추가하자 



다시 MariaDB에 접속해서 show variables like 'c%'; 명령을 입력해보면 utf8로 바뀐것을 확인할 수 있다.



하지만 Incorrect string value warning이 계속 발생했는데 찾아보니 latin1일 때 생성된 database는 이후 생성되는 테이블도 계속 latin1로 생성되고 새로 생성하는 것들부터 utf8이 적용된다고 한다.


그럴땐 아래와 같이 한땀 한땀 설정을 바꿔주면 에러가 더 이상 발생하지 않는다.(이미 삽입된 데이터들이 많아서 database를 통째로 날릴 수 없었다.)


> alter table [table name] convert to character set "utf8";

Comments