PostgreSQL convertir une base SQL-ASCI en UTF8

UTF-8

Ayant longtemps utilisé des bases de données postgreSQL au format SQL ASCI j'ai été confronté au besoin de les convertir en UTF8.

La méthode utilisée alors et qui semble fonctionner parfaitement est de réaliser un backup de la base en question à l'aide de la commande pgdump.

Ensuite il suffit de convertir le fichier de sauvegarde obtenu (sauvegardemabase.sql) à l'aide de la commande :

iconv -f 8859_1 -t UTF-8 sauvegardemabase.sql > sauvegardemabase_utf8.sql

Enfin, on édite le fichier obtenu pour changer le ligne concernant l'encodage :

SET client_encoding='UTF8';

Il ne reste plus qu'à restaurer le fichier obtenu dans la nouvelle base de données et le tour est joué

Par Christophe HIRON
10 décembre 2013