MySQL-Datenbankzeichenkodierung ändern

Schritt-für-Schritt-Anleitung: MySQL-Datenbank auf UTF-8 umstellen.

Beim Migrieren von Websites oder der Arbeit mit älteren Projekten können gelegentlich Probleme mit der fehlerhaften Zeichendarstellung auftreten. Dies liegt meist an einer falschen Datenbankcodierung. Im Folgenden sind einige einfache Möglichkeiten beschrieben, die Codierung Ihrer MySQL-Datenbank zu ändern — über phpMyAdmin oder SQL-Abfragen.

Eine Datenbank ist eine Sammlung miteinander verknüpfter Tabellen, in denen alle Daten Ihrer Website gespeichert sind.


Codierung über phpMyAdmin und einen Texteditor ändern

Exportieren Sie zunächst Ihre Datenbank über phpMyAdmin auf Ihren lokalen Computer.

file

Öffnen Sie die exportierte SQL-Datei in einem Texteditor (z. B. Notepadqq oder Notepad2) und konvertieren Sie die Codierung in UTF-8 ohne BOM.

Importieren Sie die Datei anschließend über phpMyAdmin in eine neu erstellte Datenbank.


Codierung über eine SQL-Abfrage ändern

Öffnen Sie phpMyAdmin → wählen Sie Ihre Datenbank → Reiter „SQL" und führen Sie folgende Abfrage aus:

file

ALTER TABLE `db_name`.`table_name` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

Hinweis

Diese Abfrage ändert den Zeichensatz der angegebenen Tabelle auf den gewählten (in diesem Fall utf8).

Um die Codierung aller Tabellen auf einmal zu konvertieren, verwenden Sie folgende Abfrage:

SELECT CONCAT(
  'ALTER TABLE `', t.`TABLE_SCHEMA`, '`.`', t.`TABLE_NAME`, 
  '` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;'
) AS sqlcode
FROM `information_schema`.`TABLES` t
WHERE t.`TABLE_SCHEMA` = 'DATABASE_NAME'
ORDER BY 1;

Hinweis

Ersetzen Sie DATABASE_NAME durch den Namen Ihrer eigenen Datenbank.

Kopieren Sie die generierten Zeilen und führen Sie sie in der SQL-Konsole von phpMyAdmin aus.


Hilfe

Bei Fragen oder wenn Sie Unterstützung brauchen, erreichen Sie uns jederzeit über das Ticketsystem — wir helfen Ihnen gern weiter!

Hilfe benötigt?Unsere Ingenieure helfen Ihnen kostenlos bei jeder Frage in wenigen MinutenKontaktieren Sie uns