Ich habe das schon öfters gelesen und auch selbst das Problem gehabt das eine bestehende Datenbank noch mit dem latin1 Zeichensatz codiert ist. Hier eine kleine Anleitung wie man die Datenbank auf UTF 8 umstellt.
Als Erstes einen Dump der Datenbank ziehen:
Code: Alles auswählen
mysqldump -u root -p --default-character-set=latin1 -c --insert-ignore --skip-set-charset DBNAME > DBDUMP.sql
Danach ersetzt man den Zeichensatz direkt im SQL Dump:
Code: Alles auswählen
sed -r 's/latin1/utf8/g' DBDUMP.sql > DBDUMP_UTF8.sql
Erstmal ab in die Datenbank
Code: Alles auswählen
mysql -uroot -p
Jetzt wird die Datenbank gelöscht:
Code: Alles auswählen
mysql>drop database DBNAME;
Code: Alles auswählen
Query OK, 47 rows affected (0.11 sec)
Code: Alles auswählen
mysql>create database DBNAME CHARACTER SET utf8 COLLATE utf8_general_ci;
Code: Alles auswählen
Query OK, 1 row affected (0.00 sec)
Code: Alles auswählen
quit
Code: Alles auswählen
mysql -u root -p --default-character-set=utf8 DBNAME < DBDUMP_UTF8.sql
HTH
Patrick