Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL Converti i dati latin1 in UTF8

Ho avuto casi come questo in vecchie installazioni di wordpress con il problema che i dati stessi erano già in UTF-8 all'interno di un database Latin1 (a causa del set di caratteri predefinito di WP). Ciò significa che non c'era una reale necessità di conversione dei dati ma dei formati ddbb e tabella. Nella mia esperienza le cose si incasinano quando si esegue il dump poiché ho capito che MySQL utilizzerà il set di caratteri predefinito del client che in molti casi è ora UTF-8 .Pertanto assicurarsi che l'esportazione con la stessa codifica dei dati sia molto importante. In caso di Latin1 DDBB con codifica UTF-8:

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

Quindi sostituire i riferimenti Latin1 all'interno del dump esportato prima di reimportare in un nuovo database in UTF-8. Una specie di:

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

Nel mio caso questo link è stato di grande aiuto. Ha commentato qui in spagnolo .