1. 현재 charset 확인
우선mysql 설정이 어떻게 된지 확인을 해보아야합니다.
show variables like "%character%";
하나라도 utf8이 아니면 바꿔야합니다.
set 명령어로 변경하려고 했는데 그렇게 하고나서
mysql stop / start 를 하니 저의 경우 원복이 되었습니다.
그래서 찾아보니 /etc/my.cnf 를 만들면 된다고합니다.
cd /usr/local/mysql/support-files 이경로아래에 sample이있어야하는데 없어서 걍
인터넷에서 긇어왔습니다.
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
init_connect=SET collation_connection=utf8_general_ci
init_connect=SET NAMES utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
그다음 다시 mysql stop/start 하였고 잘적용된것을 확인하였습니다.
그런데 insert table a ( c1 ) values ( '테스트') 하니 안들어가는군요
프로그램에서는 아래 오류
java.sql.SQLException: Incorrect string value
쿼리에서 넣으려고 하면 아래와 같은 오류가 납니다.
ERROR 1366 (HY000): Incorrect string value: '\xC5\xC2\xB1\xD7' for column 'name' at row 1
원인은 charset utf8로 셋팅하기전에 테이블을 생성했기때문이네요
drop table 후 다시 만드니 잘동작합니다.
검색하다보니 type을 varchar 안쓰고 text 로써서 안됐다고 하시는분도있네요
혹시나 text쓰신분 있으시면 vharchar 쓰세요
'mac os 적응기' 카테고리의 다른 글
mac mysql root 비밀번호 재설정 (0) | 2017.12.16 |
---|---|
mac jenkins 삭제 (0) | 2017.12.16 |
mac jenkins 설치하기 (0) | 2017.12.16 |
맥 마우스 커지게 만들기 (0) | 2017.12.15 |
mac tomcat 설치 (0) | 2017.12.15 |