Planet Libre - Changer l'encodage d'une base de données MySQLhttp://www.planet-libre.org/index.php?post_id=16424&go=external
Modifier l'encodage d'une base mysql
Backup de la base
mysqldump -uusername -ppassword -c -e --default-character-set=utf8 --single-transaction --skip-set-charset --add-drop-database -B dbname > dump.sql
cp dump.sql dump-fixed.sql
vi dump-fixed.sql
Rechercher / remplacer dans le fichier ouvert dans vi
:%s/DEFAULT CHARACTER SET latin1/DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci/
:%s/DEFAULT CHARSET=latin1/DEFAULT CHARSET=utf8/
:wq
Suppression de la base de données et recréation en utf8
DROP DATABASE dbname;
CREATE DATABASE dbname DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Réimport de la base au format utf8
mysql -uusername -ppassword --default-character-set=utf8 dbname< dump-fixed.sql