MySQL は一般的なリレーショナル データベース管理システムです。実際の開発では、MySQL の文字セットの変更が必要になる場合があります。この記事では、MySQL の文字セットを変更する方法を紹介します。
1. データベースの現在の文字セットを確認する
MySQL でデータベースの現在の文字セットを確認するには、次のコマンドを使用できます:
SHOW VARIABLES LIKE '%character%';
このコマンド現在使用されている文字セットを含むいくつかのシステム パラメータの値を返します。例:
Variable_name | Value ---------------------|--------- character_set_client | utf8mb4 character_set_results| utf8mb4 character_set_system | utf8 character_sets_dir | /usr/share/mysql/charsets/
このうち、character_set_client
はクライアントが使用する文字セットを表し、character_set_results
はクエリ結果の文字セットを表し、character_set_system
は MySQL システムで使用される文字セットを表します。
2. データベースの文字セットを変更する
MySQL の起動パラメータまたは設定ファイルで MySQL の文字セットを変更できます。まず、my.cnf
ファイルを編集する必要があります。このファイルは通常、/etc/mysql
または /etc/mysql/mysql.conf.d
にあります。ディレクトリ。
ファイルを開いた後、次の行を見つけます:
[mysqld] ...
この行の下に次のコードを追加します:
collation-server = utf8mb4_unicode_ci init-connect='SET NAMES utf8mb4' character-set-server = utf8mb4
これらのオプションは、それぞれで使用される文字セットと組み合わせを設定します。 MySQL ルールとデフォルトの接続文字セット。
変更を保存した後、変更を有効にするために MySQL サービスを再起動する必要があります:
sudo service mysql restart
次に前述のコマンドを使用すると、MySQL が新しい設定を正常に使用していることがわかります。文字セットを設定します。
3. データベース テーブルの文字セットを変更する
既存のデータベース テーブルの文字セットを変更する必要がある場合は、次のメソッドを使用できます:
ALTER TABLE `table_name` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
このうち table_name
は操作対象のテーブル名、utf8mb4
は新しい文字セット、utf8mb4_unicode_ci
は新しい組み合わせルールです。
4. データベース列の文字セットを変更する
既存の列の文字セットを変更する必要がある場合は、次のステートメントを使用できます:
ALTER TABLE `table_name` MODIFY `column_name` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Among table_name
はターゲット テーブルの名前、column_name
はターゲット列の名前、utf8mb4
は新しい文字セット、utf8mb4_unicode_ci
は新しい組み合わせルールです。
概要
MySQL で文字セットを変更するには、構成ファイルを編集し、SQL ステートメントを使用する必要があります。変更が完了したら、変更を有効にするために MySQL サービスを再起動する必要があります。既存のテーブルまたは列の文字セットを変更する必要がある場合は、ALTER
コマンドを使用して変更できます。文字セットを変更すると既存のデータに影響を与える可能性があるため、データの損失を避けるために事前にデータをバックアップする必要があることに注意してください。
以上がmysql文字セットを変更するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。