Ändern Sie die Standardsortierung in WampServer

912
yaylitzis

Ich habe gerade WampServer (x64) installiert, um eine WordPress-Site zu installieren. Im localhost/phpmyadmin/Server ist die Verbindungssortierung utf8mb4_general_ci.

Beim Erstellen einer neuen Datenbank habe ich die Kollatierung als "utf8_general_ci" definiert.

Bei der Installation von WordPress habe ich jedoch in meiner Datenbank nachgesehen und alle Tabellen sind in einer Sortierung utf8mb4_unicode_520_ci

Warum war das passiert?

Ich habe es versucht und in der C:\wamp64\bin\mysql\mysql5.7.14\my.iniDatei unter dem Tag habe [mysqld]ich hinzugefügt:

character-set-server=utf8  collation-server=utf8_general_ci 

Dann habe ich den Wampserver neu gestartet, die WordPress von Grund auf neu installiert und alle Tabellen haben Collation wieder utf8mb4_unicode_520_ci

Wie kann ich das beheben?

0
Wenn es sich um die [Serververbindungs-Kollatierung] (http://dev.mysql.com/doc/refman/5.7/de/charset-connection.html) handelt, kann sie sich von der Kollatierung unterscheiden, die tatsächlich im Hintergrund verwendet wird. Was ist der Grund, warum Sie diese Änderung vornehmen möchten? Ihr Ansatz ist richtig. Sie können eine einzelne Datenbank oder Tabelle für ihre tatsächliche Sortierung [check] (https://mediatemple.net/community/products/dv/204403914/default-mysql-character-set-and-collation). [Dies] (https://core.trac.wordpress.org/ticket/32105) würde `utf8mb4_unicode_520_ci` als die bessere Wahl erscheinen lassen? Seth vor 7 Jahren 0
Das Problem begann, als ich versuchte, die Website auf einen Server zu migrieren, der utf8mb4 nicht unterstützte. Sie sagten mir, ich solle die Sortierung in utf8_general ändern. yaylitzis vor 7 Jahren 0
Aber das ist ein völlig anderes Problem als Sie beschrieben haben. Wenn Sie eine Migration durchgeführt haben, haben Sie Ihre SQL-Dateien auf eine feste Einstellung der Kollatierung überprüft? Seth vor 7 Jahren 0
Ich bin ein Neuling. Ich fürchte, ich weiß nicht, was Sie genau meinen. Was soll ich tun? yaylitzis vor 7 Jahren 0
Für Ihre Migration haben Sie wahrscheinlich die vorhandene Datenbank in irgendeiner Form mit phpMyAdmin oder mysqldump exportiert. Recht? In diesem Fall haben Sie eine `.sql`-Datei erhalten, die nur eine normale Textdatei ist. Sie können nur Zeilen, die "utf8mb4_unicode_520_ci" erwähnen, durch Zeilen ersetzen, die den gewünschten Zeichensatz oder die gewünschte Sortierung haben, oder diese alle verwerfen, um die Standardeinstellung des Servers zu verwenden. Obwohl dies ein gewisses Risiko für das Zeug in Ihrer Datenbank bedeuten würde, je nachdem, was es ist. Seth vor 7 Jahren 0
na genau das habe ich gemacht! Jetzt, wo ich eine neue Site baue, wollte ich das vermeiden. Um meine Datenbank zu exportieren, mache ich das von phpmyadmin aus. yaylitzis vor 7 Jahren 0

1 Antwort auf die Frage

0
Seth

Sie können Kollatierungen an mehreren Stellen definieren. Wie in den Kommentaren beschrieben, unterstützt Ihre MySQL-Server-Version das Festlegen der Sortierung auf Verbindungsebene.

Um zu sehen, wann Sie die richtige Konfiguration geändert haben, können Sie eine einfache CREATE TABLEAnweisung wie die folgende ausführen und prüfen, welcher Zeichensatz und welche Sortierung verwendet werden soll.

CREATE TABLE testSettings( Dummy TEXT ); 

Sie haben die WP-Version nicht angegeben, aber Sie könnten versuchen, charund collationdie Konfigurationsdatei [ 2 ] zu verwenden. Auf die aktuelle WP - Version (4.7.1) scheint der Standard die eingestellt werden, charsetum utf8ein und nicht definieren collation. Sie müssen testen, wann die Einstellung der Kollatierung in der Konfiguration die Änderung verhindert.

Aber selbst wenn Sie das tun, bin ich mir nicht sicher, ob es Ihr Fell retten würde, da WP ( zumindest seit 2015 ) die Kollatierung im Hintergrund aufrüstet utf8mb4. Wenn diese Informationen nicht ausreichen, können Sie sich auch diesen geschlossenen Fehler ansehen, der die Entscheidung etwas beleuchten könnte.

Um das Upgrade zu umgehen, können Sie eine ältere MySQL-Version verwenden. Aber bei der Suche das würde ich vorschlagen, nur den Dienst zu ändern, dass Ihr DB läuft. Wenn sie nicht unterstützt werden utfmb4, wird anscheinend ein MySQL-Server ausgeführt, der älter als 5.5.3 ist, das im März 2010 veröffentlicht wurde . Was darauf hindeutet, dass sie ihre Software seit mehr als 6 Jahren nicht aktualisiert haben.