[Eisfair] eisfair-1 mit UTF-8
Marcus Roeckrath
marcus.roeckrath at gmx.de
Sa Apr 6 11:48:15 CEST 2013
Hallo Fabian,
Fabian Törner wrote:
[mysql-Datenbank nach utf konvertieren]
>> Das steht in der aktuellen Linux Magazin 5/13 S. 32 ff.
>>
>
> liegt mir leider nicht vor - ist es zeitaufwändig einen Auszug davon
> hier nieder zuschreiben?
Der grundsätzliche Weg ist folgender (ohne Gewähr und noch ungetestet;
umbrochene Befehle immer in einer langen Zeile!!!!!!!!!):
1. Datenbank dumpen -> ergibt textbasierte sql-Datei
2. In der sql-Datei die Zeichensatzangabe der DB nach utf ändern
mysqldump --opt -Q -u DB-User -p Passwort -h localhost DB-Name | sed
s'/DEFAULT CHARSET=.*;/DEFAULT CHARSET=utf8 COLLATE=utf8_unicode__ci;/g' >
mysql_dump.sql
3. Den Inhalt der Dump-Datei von iso nach utf8 ändern, wenn diese iso
kodiert ist
Mit "file -i mysql_dump.sql" den "zeichensatz" dieser Ascii-Datei
feststellen, wenn dies nicht utf-8 text sondern wahrscheinlicherweise
ISO-8859 text" ist, dann
iconv -f zeichensatz -t utf8 mysql_dump.sql > mysql_dump.utf8.sql
zeichensatz ist durch die mit dem file-Kommando festgestellte Kodierung zu
ersetzen (ohne "text").
4. Rücklesen der Datenbank
mysql -u DB-User -p Passwort- h localhost --default-character-set=utf8
DB-Name < mysql_dump.utf8.sql
Und es gilt immer: Ein vorheriges Backup der Datenbank ist Pflicht!
--
Gruss Marcus
Mehr Informationen über die Mailingliste Eisfair