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

MySQL Convertir les données latin1 en UTF8

J'ai eu des cas comme celui-ci dans d'anciennes installations wordpress, le problème étant que les données elles-mêmes étaient déjà en UTF-8 dans une base de données Latin1 (en raison du jeu de caractères par défaut de WP). Cela signifie qu'il n'y avait pas vraiment besoin de convertir les données, mais les formats ddbb et table. D'après mon expérience, les choses se gâtent lors du vidage car je comprends que MySQL utilisera le jeu de caractères par défaut du client qui, dans de nombreux cas, est maintenant UTF-8 .Par conséquent, s'assurer qu'exporter avec le même codage des données est très important. En cas de Latin1 DDBB avec codage UTF-8 :

$ mysqldump –default-character-set=latin1 –databases wordpress > m.sql

Remplacez ensuite les références Latin1 dans le vidage exporté avant de réimporter dans une nouvelle base de données en UTF-8. Sorte de :

$ replace "CHARSET=latin1" "CHARSET=utf8" \
    "SET NAMES latin1" "SET NAMES utf8" < m.sql > m2.sql

Dans mon cas ce lien a été d'une grande aide. espagnol .