Modifier le charset dans MySQL

Tutoriel pour modifier le charset MySQL.

Introduction

MySQL offre une gamme d'encodage de caractères qui peuvent vous servir. Pour savoir quels sont les encodages supportés par votre base de données simplement exécuter la requête suivante : show charset.

Plusieurs raisons peuvent vous inciter à modifier le "charset" d'une base de données. L'ajout de nouvelles langues, meilleure compatibilité avec un script client, etc.

Générer un script de modifications

Si vous souhaitez modifier le charset de toutes les tables et colonnes dans une base de données MySQL pour une raison ou une autre, voici une méthode qui vous permet de générer la modification désirée.

Par exemple si on souhaite modifier pour utiliser le charset utf8mb4 avec la collation utf8mb4_unicode_ci

mysql -N -u user -p -e "SELECT DISTINCT CONCAT( 'ALTER TABLE ', TABLE_SCHEMA, '.', TABLE_NAME, ' CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;' ) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'nom de la bd' AND CHARACTER_SET_NAME NOT LIKE 'utf8mb4'" > alter.sql

@alert(['type' => 'primary']) N'oubliez pas de remplacer le "user" et "nom de la bd" par les valeurs désirées. @endalert

Exécuter le script de modifications

Ceci va créer un script alter.sql qui pourra alors être exécuté dans la base de données pour procéder au changement.

Voici comment importer directement dans la base de données.

mysql -u user -p < alter.sql

@alert(['type' => 'warning']) Il est suggéré de faire une sauvegarde en cas de problème, consulter notre tutoriel pour faire une sauvegarde MySQL. @endalert

Autres suggestions

Faire une sauvegarde MySQL

MySQL

Tutoriel pour faire des sauvegardes et restaurations de base de données MySQL.

Copyright 2017-2020 © webO3 - tout droit réservé