デフォルトでは、MySQLデータベースにはlatin1文字セットと照合があります。ただし、MySQLデータベースにUTF8文字を格納する必要がある場合があります。文字セットをlatin1からUTF8に変更する方法は次のとおりです。
MySQLデータベースをlatin1からUTF8に変換する方法
MySQLデータベースの文字セットをlatin1からUTFに変更する手順は次のとおりです。
1。現在の文字セットを決定する
MySQLコマンドラインツールにログインします。パスワードプロンプトが表示されます。パスワードを入力してMySQLデータベースにログインします。
$ sudo mysql -uroot -p
次のコマンドを実行して、データベースの現在の文字セットを判別します。以下のdatabase_nameをデータベース名に置き換えてください
mysql> SELECT default_character_set_name FROM information_schema.SCHEMATA S WHERE schema_name = "database_name"; +----------------------------+ | default_character_set_name | +----------------------------+ | latin1 | +----------------------------+
特定のデータベーステーブルの文字セットを決定する場合は、次のコマンドを実行します。 database_nameとtable_nameをそれぞれデータベース名とテーブル名に置き換えます。
mysql> SELECT CCSA.character_set_name FROM information_schema.TABLES
T, information_schema.COLLATION_CHARACTER_SET_APPLICABILITY
CCSA WHERE CCSA.collation_name = T.table_collation AND T.table_schema = "database_name" AND T.table_name = "table_name";
ボーナスリード:MySQLで最大接続数を増やす方法
2。文字セットをlatin1からUTF8に変更します
次のコマンドを実行して、MySQLデータベースの文字セットをlatin1からUTF8に変更します。 database_nameをデータベース名に置き換えます
MySQLの場合>5.5
mysql> ALTER DATABASE database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
MySQLの場合<=5.5
mysql>ALTER DATABASE database_name CHARACTER
SET utf8 COLLATE utf8_unicode_ci;
ボーナスリード:MySQLでパーティションをランク付けする方法
同様に、MySQLテーブルの文字セットをlatin1からUTF8に変更するコマンドは次のとおりです。 table_nameをデータベーステーブル名に置き換えます。
MySQLの場合>5.5
mysql> ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
MySQLの場合<=5.5
mysql>ALTER TABLE table_name CONVERT TO CHARACTER
SET utf8 COLLATE utf8_unicode_ci;
上記のチュートリアルが、データベースの文字セットをutf8mb4(UTF-8)に変更するのに役立つことを願っています。