>  기사  >  데이터 베이스  >  centOS7에서 mysql에 한자를 삽입할 때 발생하는 오류를 해결하는 방법

centOS7에서 mysql에 한자를 삽입할 때 발생하는 오류를 해결하는 방법

PHPz
PHPz앞으로
2023-05-31 20:49:041212검색

mysql을 설치한 후 abc 데이터베이스를 생성한 후 새로운 abc 테이블을 생성했습니다. 영어를 입력하는 데는 문제가 없지만 중국어를 입력하는 데 문제가 있습니다:

error 1366 (hy000): 잘못된 문자열 값: 'xe4xbdx99xe9x93xb6..'

데이터베이스 인코딩 문제이므로 데이터베이스 인코딩을 변경해야 합니다

2가지 방법을 알려드립니다. 하나는 코드를 직접 설정하는 것이고, 다른 하나는 centos7에서 /usr/my.cnf 파일을 수정하는 것입니다.

첫 번째 방법:

데이터베이스의 인코딩 테이블 나열

mysql> show variables like '%char%';

인코딩 형식 수정:

mysql> set character_set_database=utf8;

mysql> set character_set_server=utf8;

잠깐

원래의 char_set_filesystem과 Character_sets_dir의 기본값은 그대로 유지하고 나머지는 모두 utf8로 변경하면 됩니다.

그런 다음 원래 생성된 데이터베이스를 삭제하고 새로 생성한 후 중국어를 삽입할 테이블을 생성합니다. . .

두 번째 방법: centos7에서 /usr/my.cnf 파일을 수정합니다.

구성 파일을 엽니다.

vi /etc/my.cnf;

[mysqld], [mysql], [client ]

[mysqld]

character_set_server = utf8

[mysql]

default-character-set=utf8

[client]

default-character-set=utf8

Remarks 아래에 다음 내용을 각각 추가하세요:

파일 편집에 사용되는 단축키:

편집하려면 편집 모드로 들어가세요

i

편집 모드 종료

esc

파일을 종료하고 저장

:wq

위 내용은 centOS7에서 mysql에 한자를 삽입할 때 발생하는 오류를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제