PHP
[PHP] General error: 1366 Incorrect string value: '\xEC\xA0\x95\xEC\x9D\xB8...' for column... 에러 해결
참깨빵위에참깨빵_
2020. 3. 7. 10:55
728x90
반응형
[DB/MariaDB/Mysql] Mysql 언어설정으로 인한 문제, 그리고 해결
# [DB/MariaDB/Mysql] Mysql 언어설정으로 인한 문제, 그리고 해결 1. 오류 사항 1) mysql insert query 실행시 오류 메시지 mysql> ERROR 1366 (HY000) : incorrect string value : ''\xED\x95\x9C\xEC\x9A\xB0....
postitforhooney.tistory.com
해당 에러는 MySQL 언어 설정이 utf8로 되어 있지 않아서 생긴 문제다.
해결법은 내가 쓰려는 MySQL 테이블의 언어 설정을 utf8로 바꾸면 된다.
난 AWS를 쓰기 때문에 /etc/mysql/mysql.conf.d에 mysqld.cnf가 있어서 이곳으로 들어가 작업했다.
내가 추가한 것이라는 주석 밑의 두 줄을 추가했다.
그리고 하이디 SQL을 통해 DB로 들어가서 쿼리 탭에 이 쿼리를 날렸다.
ALTER TABLE 테이블명 CONVERT TO CHARSET utf8;
난 여기서 바로 예제를 돌려 에러가 해결된 걸 확인했지만 MySQL을 재시작하고 싶다면 재시작해도 된다.
난 AWS라 그런지 아래 문장을 입력해야 MySQL이 재시작됐다.
# service mysql restart
이 다음 바로 DB에 데이터를 집어넣는 예제를 따라 insert.php에서 웹 페이지를 통해 DB에 값을 집어넣는 코드를 돌려봤더니 정상적으로 들어가는 걸 확인했다.
반응형