Ich habe eine WordPress-Website auf meinem lokalenWAMP-Server. Wenn ich seine Datenbank auf den Live-Server hochlade, erhalte ich eine Fehlermeldung
#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’
Jede Hilfe wäre dankbar!
Sie können dieses Problem lösen, indem Sie suchen
ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;
in Ihrer .sql
-Datei und tauschen Sie sie mit aus
ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
Ich glaube, dass dieser Fehler verursacht wird, weil auf dem lokalen Server und dem Live-Server unterschiedliche Versionen von MySQL ausgeführt werden. Um das zu lösen:
utf8mb4_unicode_520_ci
durch utf8mb4_unicode_ci
Hoffentlich hilft das
In meinem Fall fällt es mir aus
Neuer Server lief MySQL 5.5
,
alter Server lief MySQL 5.6
.
Ich habe diese Fehlermeldung erhalten, als ich versuchte, die .sql
-Datei zu importieren, die ich von meinem alten Server exportiert hatte.
MySQL 5.5 unterstützt utf8mb4_unicode_520_ci
nicht, aber
MySQL 5.6 tut dies.
Beim Update auf MySQL 5.6
auf dem neuen Server wurde der Fehler behoben!
Wenn Sie MySQL 5.5 beibehalten möchten, können Sie:
Erstellen Sie eine Kopie Ihrer exportierten .sql
-Datei
- Instanzen von utf8mb4unicode520_ci
und utf8mb4_unicode_520_ci
ersetzen
... mit utf8mb4_unicode_ci
- importieren Sie Ihre aktualisierte .sql
-Datei.
Öffnen Sie die SQL-Datei in Ihrem Texteditor.
1. Suche: utf8mb4_unicode_ci Ersetzen Sie: utf8_general_ci (Alle ersetzen)
2. Suche: utf8mb4_unicode_520_ci Ersetzen: utf8_general_ci (Alle ersetzen)
3. Suche: utf8mb4 Ersetzen: utf8 (Alle ersetzen)
Speichern und hochladen!
einfach "520_" entfernenutf8mb4_unicode_520_ci
→ utf8mb4_unicode_ci
einfach zu ersetzen
sed -i 's/utf8mb4_unicode_520_ci/utf8mb4_unicode_ci/g' your_sql_file.sql
suchen und Ersetzen:
utf8mb4_unicode_520_ci
mit
utf8_general_ci
in der gesamten SQL-Datei
Ich habe gerade die dump.sql-Datei in Notepad ++ geöffnet und STRG + H gedrückt, um die Zeichenfolge " utf8mb4_0900_ai_ci " zu finden und zu ersetzen, und habe sie durch " utf8mb4_general_ci ". Quelllink https://www.freakyjolly.com/resolved-when-i-faced-1273-unknown-collation-utf8mb4_0900_ai_ci-error/
Verspätet zur Party, aber falls dies bei einer WORDPRESS
-Installation passiert:
#1273 - Unknown collation: 'utf8mb4_unicode_520_ci
In phpmyadmin unter export method
> Format-specific options
(benutzerdefinierter Export)
Stellen Sie Folgendes ein: MYSQL40
Wenn Sie jetzt versuchen zu importieren, wird möglicherweise eine weitere Fehlermeldung angezeigt:
1064 - You have an error in your SQL syntax; .....
Das liegt daran, dass die ältere TYPE
-Option, die mit ENGINE
synonym war, in MySQL 5.5 entfernt wurde.
Öffnen Sie Ihre .sql
-Datei, suchen und ersetzen Sie alle Instanzen
von TYPE=
bis ENGINE=
Nun sollte der Import reibungslos verlaufen.
Abrufen des Kollatierungsfehlers Nr. 1273 - Unbekannte Kollatierung: 'utf8mb4_unicode_520_ci' wird durch den Unterschied zwischen der MySQL-Version, von der Sie exportieren, und unserem MySQL-Server, auf den Sie importieren, verursacht. Grundsätzlich überprüft die Bibliothek Wordpress für neuere Versionen, auf welcher SQL-Version Ihre Site ausgeführt wird. Wenn MySQL Version 5.6 oder höher verwendet wird, wird die Verwendung eines neuen und verbesserten Unicode-Kollatierungsalgorithmus (Unicode Collation Algorithm, UCA) mit dem Namen „utf8mb4_unicode_520_ci“ vorausgesetzt. Dies ist großartig, es sei denn, Sie verschieben Ihre WordPress - Site von einer neueren 5.6-Version von MySQL auf eine ältere MySQL-Version vor 5.6.
Um dies zu beheben, müssen Sie entweder Ihre SQL-Exportdatei bearbeiten und eine Suche und Ersetzung durchführen, indem Sie alle Instanzen von "utf8mb4_unicode_520_ci" in "utf8mb4_unicode_ci" ändern. Oder führen Sie die folgenden Schritte aus, wenn Sie einen PHPMyAdmin haben: