> 데이터 베이스 > MySQL 튜토리얼 > Mysql5.7의 중국어 왜곡 문제에 대한 자세한 설명

Mysql5.7의 중국어 왜곡 문제에 대한 자세한 설명

黄舟
풀어 주다: 2017-03-17 13:30:35
원래의
1699명이 탐색했습니다.

mysql5.7을 사용하면 웹단을 통해 중국어를 데이터베이스에 입력하면 글자가 깨져 나오는 것을 볼 수 있습니다. 그런데 데이터베이스에 데이터를 삽입한 SQL 문을 직접 실행해 보면 중국어가 나옵니다. 이 문제는 어떻게 해결하나요?

mysql5.7을 사용할 때 웹을 통해 중국어를 입력하면 문자가 깨져 나오는 현상이 발생합니다. 그런데 데이터베이스에 있는 SQL 문을 직접 실행하면 데이터를 삽입한 후 한자가 정상적으로 표시되는 문제를 해결하려면? MySQL의 데이터 인코딩 프로세스와 원리는 여기에서 설명하지 않습니다. 관심이 있으시면 Baidu에서 직접 확인해 보세요.

아래에서는 문제를 해결하기 위해 다음 작업을 직접 사용합니다.

1. mysql 콘솔을 열고 'character%'와 같은 show 변수 명령을 입력합니다.

표시 내용은 다음과 같습니다.

 +--------------------------+-------------------------------------------+
| Variable_name      | Value                   |
+--------------------------+-------------------------------------------+
| character_set_client   | latin1                  |
| character_set_connection | latin1                  |
| character_set_database  | utf8                   |
| character_set_results  | latin1                  |
| character_set_server   | utf8                   |
| character_set_system   | utf8                   |
| character_sets_dir    | C:\MySQL\MySQL Server 5.0\share\charsets\ |
+--------------------------+-------------------------------------------+
로그인 후 복사

2. my.ini 파일

 [client]

  default-character-set=utf8

  [mysqld]
  default-storage-engine=INNODB
  character-set-server=utf8
  collation-server=utf8_general_ci
로그인 후 복사

를 수정합니다. 3. 다시 시작한 후 다음 명령을 사용합니다.

  +--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
로그인 후 복사

character_set_database 및 Character_set_server의 기본 문자 집합은 여전히 ​​latin1입니다.

4. 다음 명령을 입력합니다: set names utf8;

다시 시작한 후 첫 번째 단계 명령을 사용하여 확인합니다:

+--------------------------+------------------------------------------------+
| Variable_name | Value |
+--------------------------+------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\wamp64\bin\mysql\mysql5.7.9\share\charsets\ |
+--------------------------+------------------------------------------------+
로그인 후 복사
character_set_filesystem은 바이너리입니다. , 그 외는 모두 utf8입니다.

이렇게 하면 웹 측에서도 인코딩을 utf8로 설정하면 정상적으로 데이터베이스에 입력이 가능합니다.

위 내용은 Mysql5.7의 중국어 왜곡 문제에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿