Aangezien het probleem een MySQL-fout was met dubbel gecodeerde UTF8-strings, is MySQL de juiste manier om het op te lossen.
Het uitvoeren van de volgende commando's zal het oplossen -
mysqldump $DB_NAME -u $DB_USER -p -h $DB_HOST.EXAMPLE.NET --add-drop-table --default-character-set=latin1 > export.sql
- latin1 wordt hier gebruikt om MySQL te dwingen de karakters niet te splitsen, en mag niet anders worden gebruikt.cp export{,.utf8}.sql
- een reservekopie maken.sed -i -e 's/latin1/utf8/g' export.utf8.sql
- De latin1 vervangen door utf8 in het bestand, om het te importeren als UTF-8 in plaats van 8859-1.mysql $DB_NAME -u $DB_USER -p -h $DB_HOST.EXAMPLE.NET < export.utf8.sql
- importeer alles terug naar de database.
Dit lost het probleem in ongeveer tien minuten op.