Maison >base de données >tutoriel mysql >Changer l'encodage de MySQL
MySQL est un système de gestion de base de données relationnelle couramment utilisé qui prend en charge plusieurs encodages de caractères. En utilisation réelle, vous pouvez rencontrer des situations dans lesquelles certains caractères ne peuvent pas être affichés normalement. Dans ce cas, vous devez modifier les paramètres d'encodage de MySQL pour résoudre ce problème. Cet article décrira comment modifier l'encodage de MySQL.
1. Comprendre l'encodage MySQL
L'encodage MySQL fait référence à la manière dont les données sont stockées, y compris les jeux de caractères et les règles de classement. MySQL prend en charge plusieurs jeux de caractères, les plus couramment utilisés sont UTF-8, GBK, Latin1, etc. Les règles de tri spécifient les règles de comparaison entre les caractères, telles que le respect ou l'insensibilité à la casse, la pondération des caractères, etc.
2. Vérifiez les paramètres d'encodage actuels
Avant de modifier l'encodage, vous devez d'abord connaître les paramètres d'encodage actuels. Vous pouvez le visualiser avec la commande suivante :
show variables like '%char%';
Cette commande affichera le jeu de caractères MySQL actuel et les paramètres de classement. Les variables les plus couramment utilisées incluent Character_set_client, Character_set_connection, Character_set_database, Character_set_results, Character_set_server, etc.
3. Modifiez les paramètres d'encodage
La modification des paramètres d'encodage de MySQL peut être obtenue en modifiant le fichier de configuration. Recherchez le fichier de configuration MySQL my.cnf (parfois appelé my.ini) et ajoutez le contenu suivant :
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] collation-server = utf8_unicode_ci init-connect='SET NAMES utf8' character-set-server = utf8
Parmi eux, default-character-set spécifie le client et le jeu de caractères par défaut de MySQL est UTF-8, et collation-server spécifie La règle de tri est utf8_unicode_ci et Character-Set-Server spécifie le jeu de caractères côté serveur comme UTF-8. init-connect spécifie l'instruction SQL à exécuter lorsque la connexion est établie, qui est utilisée pour définir le jeu de caractères sur UTF-8.
Si vous devez modifier le jeu de caractères d'une base de données existante en UTF-8, vous pouvez suivre les étapes suivantes :
(1) Sauvegardez la base de données d'origine
Utilisez la commande mysqldump pour sauvegarder la base de données d'origine Dans un fichier :
mysqldump -u root -p database > database.sql
(2) Modifiez le jeu de caractères de la base de données
Utilisez la commande suivante pour modifier le jeu de caractères de la table de la base de données en UTF-8 :
ALTER TABLE tablename CONVERT TO CHARACTER SET utf8;
où tablename est le nom de la table dont le jeu de caractères doit être modifié.
(3) Restaurer le fichier de sauvegarde
Utilisez la commande suivante pour restaurer le fichier de sauvegarde dans la base de données :
mysql -u root -p database < database.sql
4. Résumé
Les paramètres d'encodage de MySQL sont très importants pour garantir l'affichage et le traitement corrects des données. Cet article décrit comment afficher les paramètres d'encodage de MySQL et comment implémenter les paramètres en modifiant le fichier de configuration et en apportant des modifications à la base de données existante. En pratique, le jeu de caractères et le classement appropriés doivent être sélectionnés selon les besoins et testés et vérifiés de manière appropriée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!