한글로 된 내용을 저장하려고 했는데

"Warning: Incorrect string value:" 요런 에러 뿜뿜


망할(?) centos mariadb가 latin1_swedish_ci 이 기본인지라

생성했던 모든 데이터베이스와 테이블과 필드가 모두 이걸로 설정.. -_-


아무튼 가장 좋은건 DB 서버 설정시 캐릭터 셋과 콜레이션을 정해주고 시작하는건데

[링크 : http://nicesea.tistory.com/6]


그게 아니라면 일일이 하나씩 변경해 주는 수밖에.. ㅠㅠ


ALTER TABLE mytable CONVERT TO CHARACTER SET utf8  

[링크 : https://stackoverflow.com/questions/1294117/how-to-change-collation-of-database-table-column]

[링크 : https://zetawiki.com/wiki/MySQL_테이블_collation_변경]


Posted by 구차니

댓글을 달아 주세요

  1. 잉? 한번에 바꾸는게 없어요?
    처음 세팅할 때 꼭 확인해야겠네요. ㅋ

    2018.09.14 19:01 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 테이블 단위로 바꾸는것 까지 밖에 못 찾았어요. 그러니까 생성한 이후에 설정 변경하는 걸로는 DB 단위로 그 하위 모든 테이블과 필드 개별을 바꾸는건 아직 못 찾았네요 ㅠㅠ
      혹시 있을까요?

      2018.09.14 21:57 신고 [ ADDR : EDIT/ DEL ]
    • 직접 해 보지는 않았는데
      https://community.centminmod.com/threads/how-to-change-mariadb-mysql-default-character-set-collation.398/

      위 페이지 보면

       /etc/my.cnf the following line character-set-server=utf8:

      설정 파일을 수정하는 방법이 있는 것 같네요

      2018.09.14 23:18 신고 [ ADDR : EDIT/ DEL ]
    • default라 아마도 이후에 생성될 db들의 문자셋을 이걸로 하라는거지, 이미 생성된 녀석들을 변경하지는 못할 거에요 ㅠㅠ
      만약에 변경되어도 나름 문제인거죠

      2018.09.15 06:50 신고 [ ADDR : EDIT/ DEL ]