Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment changer le jeu de caractères de latin1 à UTF8 dans MySQL

Par défaut, les bases de données MySQL ont un jeu de caractères et un classement latin1. Cependant, vous devrez parfois stocker des caractères UTF8 dans la base de données MySQL. Voici comment changer le jeu de caractères de latin1 à UTF8.


Comment convertir une base de données MySQL de latin1 en UTF8

Voici les étapes pour changer le jeu de caractères de latin1 en UTF pour la base de données MySQL.


1. Déterminer le jeu de caractères actuel

Connectez-vous à l'outil de ligne de commande MySQL. Vous verrez une invite de mot de passe. Entrez votre mot de passe pour vous connecter à la base de données MySQL.

$ sudo mysql -uroot - p

Exécutez la commande suivante pour déterminer le jeu de caractères actuel de votre base de données. Remplacez database_name ci-dessous par le nom de votre base de données

mysql> SELECT default_character_set_name FROM information_schema.SCHEMATA S WHERE schema_name ="database_name ";+-------------------------------------+| nom_jeu_de_caractères_par_défaut |+----------------------- --------------+| latin1 |+-----------------------+ 

Si vous souhaitez déterminer le jeu de caractères d'une table de base de données spécifique, exécutez la commande suivante. Remplacez database_name et table_name par vos noms de base de données et de table respectivement.

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 ";

Lecture bonus :comment augmenter le nombre maximal de connexions dans MySQL

2. Changer le jeu de caractères de latin1 à UTF8

Exécutez la commande suivante pour modifier le jeu de caractères de la base de données MySQL de latin1 à UTF8. Remplacez database_name par le nom de votre base de données

Pour MySQL> 5.5

mysql> ALTER DATABASE nom_base_données JEU DE CARACTÈRES utf8mb4 ASSEMBLAGE utf8mb4_unicode_ci;

Pour MySQL <=5.5

mysql> ALTER DATABASE database_name CHARACTER  SET utf8 COLLATE utf8_unicode_ci; 

Lecture bonus :Comment classer sur une partition dans MySQL

De même, voici la commande pour changer le jeu de caractères de la table MySQL de latin1 à UTF8. Remplacez table_name par le nom de la table de votre base de données.

Pour MySQL> 5.5

mysql> ALTER TABLE table_name CONVERTIR EN JEU DE CARACTÈRES utf8mb4 COLLATE utf8mb4_unicode_ci;

Pour MySQL <=5.5

mysql> ALTER TABLE table_name CONVERT TO CHARACTER  SET utf8 COLLATE utf8_unicode_ci; 

Espérons que le didacticiel ci-dessus vous aidera à modifier le jeu de caractères de la base de données en utf8mb4 (UTF-8).