ホームページ >データベース >mysql チュートリアル >mysqlデータベースエンコーディングを変更する
MySQL は、さまざまな Web サイトやアプリケーションでデータを保存および管理するために使用される一般的なリレーショナル データベース管理システムです。 MySQL は、UTF-8、GB2312、ISO-8859-1 など、複数の文字セットとエンコード方式をサポートしています。 MySQL を使用する場合、テキスト データを正しく保存および取得できるようにするために、データベース エンコーディングの変更が必要になる場合があります。この記事では、MySQL データベースのエンコーディングを変更する方法を紹介します。
1. データベースのエンコードを問い合わせる
MySQL データベースのエンコードの問題に対処する前に、まず現在のデータベースのエンコード方式を確認する必要があります。次の SQL ステートメントを使用して、現在のデータベースのエンコーディングをクエリできます。
SHOW VARIABLES LIKE 'character_set_database';
現在のデータベースのエンコーディングが UTF-8 の場合、次の結果が返されます。
+------------------------+--------+ | Variable_name | Value | +------------------------+--------+ | character_set_database | utf8 | +------------------------+--------+
If the現在のデータベースのエンコーディングが GBK の場合、次の結果が返されます:
+------------------------+--------+ | Variable_name | Value | +------------------------+--------+ | character_set_database | gbk | +------------------------+--------+
2. データベースのエンコーディングを変更します
データベースのクエリ時に予期したエンコーディングではないことが判明した場合エンコーディングを変更する必要があります。方法は次のとおりです:
1. データベースをバックアップします
エンコーディングを変更する前に必ずデータベースをバックアップしてください。エンコード変更プロセス中にデータベースが影響を受け、データの損失や破損が発生する可能性があるためです。
mysqldump -u username -p databasename > backup.sql
このコマンドは、データベースの内容をbackup.sqlファイルにエクスポートします。username
はデータベースのユーザー名、databasename
はデータベース名です。
2. データベース エンコーディングの変更
データベースをバックアップした後、データベース エンコーディングの変更を開始できます。具体的な手順は次のとおりです:
(1) 編集MySQL 構成ファイル
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
(2) 構成ファイルを変更する
##MySQL 構成ファイルには、次の構成があります。[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] character-set-server=utf8 collation-server=utf8_general_ciこの構成ファイルでは、
character-set を変更する必要があります -server と
collation-server の値は、UTF-8 などの新しいエンコード方式に変更されます。変更された構成は次のとおりです。
[client] default-character-set=utf8mb4 [mysql] default-character-set=utf8mb4 [mysqld] character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci(3) MySQL サービスを再起動します 最後に、変更を有効にするには、次のコマンドを使用して MySQL サービスを再起動する必要があります。
sudo service mysql restart
3. データベース エンコーディングをテストする
データベース エンコーディングを変更した後、正しく変更されたことをテストする必要があります。次のクエリを通じて、現在のデータベースのエンコードを確認できます。
SHOW VARIABLES LIKE 'character_set_database';
返された結果が、現在のエンコードが前の設定と同じであることを示している場合は、変更が成功したことを意味します。
この記事では、MySQL データベースのエンコーディングを変更する方法を紹介します。データ損失やデータ破損の可能性を避けるために、必ずデータベースをバックアップし、変更プロセスのすべてのステップを注意深く確認してください。この記事の内容を通じて、読者は MySQL データベースのコーディング方法を簡単に変更してテストできると思います。
以上がmysqlデータベースエンコーディングを変更するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。