# 推奨: 「mysql 中国語文字化けコードの解決策: 1. Linux 環境で my.cnf ファイルを見つけてエンコードを変更する; 2. Windows で my.ini ファイルを変更する; 3. 使用中に文字セットを強制的に設定するコーディング。
mysql ビデオ チュートリアル」
#1. はじめにMySQL のデフォルトは
latin1(実際には ISO-8859-1) 文字セットです。これは明らかに私たちのニーズを満たしていないため、ほとんどの文字セットと互換性があるように UTF8 文字セットに調整しました。 1. まず 2 つの SQL を実行して、現在の MySQL デフォルト文字セット エンコーディングを検出します:
Sql コマンド:
mysql>変数を表示
like"% colla%";
Sql コマンド:
mysql>「%char%」のような変数を表示;
2. 文字セットを UTF-8 に変更します
MySQL 構成ファイル
my.cnfファイルを変更する必要があり、Windows 環境は my.ini です。 # ##書類。 通常は
linux 環境 my.cnf ファイルは次の場所にあります。 in/etc/mysql/my.cnf(/etc/my.cnf ) パスですが、インストールのバージョンやシステム環境が異なるため、このディレクトリでファイルが見つからない可能性があります1. Linux での変更方法
## 新しくインストールした mysql には etc の下に my.cnf がない可能性があるため、mysql 設定ファイルを変更します。自分自身で作成します。 my-medium.cnf ファイルを見つけて etc フォルダーにコピーします。コマンドは次のとおりです: cp /usr/share/doc/MySQL-server-5.5.24/my-medium.cnf /etc/my.cnf
シェルコード:
#echo my.cnf ファイルを変更します
#sudo vi /etc/my.cnf
[client]の下コードを追加します:
default-character-set=UTF8コードを [mysqld] に追加します:
character_set_server=utf8
[mysql]の下にコードを追加します:
default-character-set=utf8いくつかの画像は次のとおりです。 :
変更が成功したら、mysql データベースを再起動します。シェル コマンド:
service mysql restart
データベース サービス mysql start が正常に開始されることがありますが、mysql コマンドは root でしか使用できません。ファイアウォールが原因である可能性があります。次のコマンドを使用すると問題が解決します:
service iptables stop
#次に文字セットをクエリします
:
show variables like '%character% '; show variables like "%colla%";
成功した画像は次のとおりです:2. Windows での変更方法
MySQL インストール ディレクトリの my-default.ini を my.ini ファイルに変更します
[client]Node
default-character-set=utf8 (追加)
[mysql]Node
default-character-set=utf8 (変更)
[mysqld]Node
character_set_server=utf8 (変更)
変更後の使用
net stop mysql
net start mysql
mysql サービスを再起動します
次に文字セットをクエリします:
'%character%' のような変数を表示します;
変数を表示しますlike " %colla%";
3. 使用時に文字セットエンコーディングを強制的に設定する
文字セットを完全に統一するためには、テーブル構築時に統一文字セットを強制的に設定する必要があります。データベース。
さらに、JDBC 経由で MySQL に接続するときに問題が起こらないようにするには、次のパラメータを接続文字列に追加する必要があります:
jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=UTF-8
以上がMysql 中国語文字化けの解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。