Heute habe ich wieder mal dazu gelernt. Das Problem: Die Datenbank der Blogfarm war leider nicht richtig konfiguriert, so dass Wordpress utf-8 an die Datenbank sendete, MySQL aber als Charset latin1 haben wollte und somit alles konvertierte, so dass einige Sonderzeichen verloren gingen.
Also muss die Datenbank richtig umgestellt werden und konvertiert werden. Aber wie?
- 1. Zeichensatz der Datenbank auf utf_general_ci umstellen. Im aktuellen phpmyadmin ist direkt auf der Startseite zu finden.
-
2. Dann ein Backup per Konsole holen:
mysqldump --skip-set-charset -h deindbhost.com -u der_db_user -p datenbank_name > datei_zum_speichern.sql
und noch einmal kopieren, damit man immer ein Backup für den Notfall hat. - 3. Den String DEFAULT CHARSET=latin1 der ganzen Datei ersetzen. Mit vi bzw vim zb. durch :%s/DEFAULT CHARSET=utf8//g
- 4. Jetzt löscht ihr per phpmyadmin alle Tabellen (NICHT die Datenbank).
-
5. Wieder in die Konsole und das bearbeitete Backup wieder einspielen:
mysql --default-character-set=utf8 -h deindbhost.com -u der_db_user -p datenbank_name < datei_zum_speichern.sql
Fertig. :)