Poiché il problema era un errore di MySQL con stringhe UTF8 a doppia codifica, MySQL è il modo giusto per risolverlo.
L'esecuzione dei seguenti comandi lo risolverà:
mysqldump $DB_NAME -u $DB_USER -p -h $DB_HOST.EXAMPLE.NET --add-drop-table --default-character-set=latin1 > export.sql
- latin1 è usato qui per forzare MySQL a non dividere i caratteri e non dovrebbe essere usato altrimenti.cp export{,.utf8}.sql
- fare una copia di backup.sed -i -e 's/latin1/utf8/g' export.utf8.sql
- Sostituendo latin1 con utf8 nel file, in modo da importarlo come UTF-8 anziché 8859-1.mysql $DB_NAME -u $DB_USER -p -h $DB_HOST.EXAMPLE.NET < export.utf8.sql
- importa tutto di nuovo nel database.
Questo risolverà il problema in circa dieci minuti.