Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL Konvertiert latin1-Daten in UTF8

Ich hatte solche Fälle in alten WordPress-Installationen mit dem Problem, dass die Daten selbst bereits in UTF-8 innerhalb einer Latin1-Datenbank waren (aufgrund des WP-Standardzeichensatzes). Dies bedeutet, dass die Daten nicht wirklich konvertiert werden mussten, sondern die ddbb- und Tabellenformate. Meiner Erfahrung nach werden die Dinge beim Dump durcheinander gebracht, da ich verstehe, dass MySQL den Standardzeichensatz des Clients verwendet, der in vielen Fällen jetzt UTF-8 ist .Daher ist darauf zu achten, dass der Export mit der gleichen Kodierung der Daten erfolgt. Im Fall von Latin1 DDBB mit UTF-8-Codierung:

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

Ersetzen Sie dann die Latin1-Referenzen innerhalb des exportierten Dumps, bevor Sie in eine neue Datenbank in UTF-8 erneut importieren. Art von:

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

In meinem Fall dieser Link war eine große Hilfe. hier in kommentiert spanisch .