Vous devez exporter la base de données et les convertir. La définition de l'encodage de la base de données, des tables et des lignes modifie la manière dont elles seront utilisées. à l'avenir mais ne convertissent pas les données qui ont déjà été stockées.
Il n'y a pas de gratuité pour l'encodage des bases de données.
Dans MySQL 5, vous devez réinitialiser tous les codages de caractères pour la base de données, les tables et les colonnes, puis réimporter les données. Le site Guide wordpress sur la modification des jeux de caractères est une bonne ressource, étape par étape, pour ce faire.
Je vous suggère de lire le guide pratique de Wordpress, car les étapes sont bien expliquées et claires, mais les points forts sont les suivants :
Définir le jeu de caractères DB :
ALTER DATABASE db_name CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Ensuite, définissez les encodages des tables existantes :
ALTER TABLE db_table CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Puis vidage avec un encodage, réimportation avec un autre.
mysqldump --user=username --password=password --default-character-set=latin1_swedish_ci dbname > dump.sql
mysql --user=username --password=password --default-character-set=utf8 dbname < dump.sql
Notez que si vous ne souhaitez pas vider et recharger l'ensemble de la base de données, vous pouvez effectuer la modification colonne par colonne en convertissant chaque colonne de texte en un type de blob équivalent, puis en la reconvertissant en une colonne de texte avec l'encodage souhaité, comme décrit dans le guide Wordpress à la page convertir des colonnes en blob et inversement .