Ändern der Zeichenkodierung einer MySQL-Datenbank

Ändern der Zeichenkodierung einer MySQL-Datenbank

Unsere gesamte Anwendung kann nun UTF-8 verarbeiten und wird unsere Wahl hinsichtlich der Kodierung in unserer gesamten Architektur sein. Der letzte Schritt besteht darin, die Kodierung unserer MySQL-Datenbanken zu ändern.

Natürlich ALTER TABLE db_table CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;sollte es möglich sein, jede der Tabellen in die richtige UTF8-Kodierung zu konvertieren, aber muss ich sonst noch etwas tun? Ich glaube, dass auch die Konfigurationsdatei my.cnf geändert werden muss.

Antwort1

Kopieren Sie dies, fügen Sie es in ein Terminal ein und starten Sie den MySQL-Server neu, um die Standardzeichenkodierung zu ändern.

cat << EOF > /etc/mysql/conf.d/utf8.cnf

[mysqld]
default-character-set=utf8

[client]
default-character-set=utf8

EOF

Antwort2

Sie sollten den Zeichensatz Ihrer Client-Anwendung auch mit diesen SQL-Anweisungen festlegen:

SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;

verwandte Informationen