Moodle 4.0.1 Installation – Server checks schlägt bei "unicode" fehl.

  • Hallo,

    ich versuche gerade die aktuelle Moodle-Version auf meinem Webhosting 2000 SE zu installieren und komme nicht weiter.

    Bei der Installation schlägt mir sofort diese Anzeige entgegen: pasted-from-clipboard.png

    Wenn ich mir im phpMyAdmin die Datenbank zunächst angeschaut habe, statt in der Datenbankübersicht bei der Datenbank zunächst bei Collations gar nichts. Wenn ich die Datenbank angeklickt habe, dann auf Operations gegangen bin und unter dem Punkt Collations versucht habe, die Collation auf utf8mb4_general_ci zu ändern, hat er das ganze zwar schön bestätigt, in der Datenbankübersicht blieb aber alles wie es ist.


    Ich habe dann auch noch in den General settings die Server connection collation auf utf8mb4_general_ci geändert, das gleiche noch einmal unter dem Menüpunkt Settings --> Features --> Databases --> Server connection allocation (dort stand zuvor bereits "utf8mb4_unicode_ci").

    Im Anschluss habe ich dann den default character set der Datenbank mit ALTER DATABASE mein_datenbankname DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; angepasst. Dann war die Anzeige sogar in der Datenbankübersicht im phpMyAdmin richtig.


    Die Fehlermeldung bei der Moodle-Installation geht aber trotzdem nicht weg.



    Übersehe ich etwas bzw. hat jemand eine Idee, woran es liegen könnte? Ich bin in dem Bereich leider noch ziemlich ein Anfänger und weiß gerade nicht mehr weiter.

    Danke für die Hilfe!


    Seltsamerweise kommt bei den "Other Checks" dann auch noch die folgende Fehlermeldung:

    pasted-from-clipboard.png


    Widersprechen sich die beiden Fehlermeldungen nicht etwas? Die erste sagt, die Datenbank wäre gar nicht auf Unicode eingestellt, die zweite, es ist nur nicht der "richtige" Standard.


    edit: Das Server charset (cp1252 West European (latin1)) werde ich ja vermutlich als Webhosting-Kunde nicht ändern können.. Aber ich kann mir auch nicht vorstellen, dass eine Rolle spielt..

  • Mit welcher PHP-Version versuchst Du das?


    Und kannst Du die beiden (blau geschriebenen) Links oberhalb der Fehler-/Warnmeldungen einmal hier rein kopieren?

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Die PHP-Version ist 7.4.29. Laut Requirements brauchen Moodle 3.11 und spätere Versionen mindestens 7.3 oder später.


    Die Links zur "Dokumentation" führen auf http://docs.moodle.org/400/en/admin/environment/unicode und http://docs.moodle.org/400/en/…ysql_full_unicode_support, bzw. leiten dann beide um auf https://docs.moodle.org/400/en/MySQL_full_unicode_support

    So wie ich das dort verstehe, geht es dort aber vor allem darum, wie man ein Upgrade von einer älteren Version auf eine neuere macht, die eben utf8 braucht..

  • Ich habe jetzt wohl den Fehler gefunden.

    Er setzt am Anfang in der config.php die dbcollation auf uf8_unicode_ci, wenn man nicht vorher in der Datenbank die oben beschriebenen Schritte durchführt.

    Also in der config.php die dbcollation auf utf8mb4_unicode_ci (oder eben general_ci) geändert und schon sagt er, dass alles super ist..

  • Ich habe jetzt wohl den Fehler gefunden.

    Er setzt am Anfang in der config.php die dbcollation auf uf8_unicode_ci, wenn man nicht vorher in der Datenbank die oben beschriebenen Schritte durchführt.

    Also in der config.php die dbcollation auf utf8mb4_unicode_ci (oder eben general_ci) geändert und schon sagt er, dass alles super ist..

    Die älteren Angaben der DB Collation für den Zeichensatz und die Sortierbarkeit in utf8_unicode_ci sind deprecated und sind meistens aus Rückwärtskompatibilität noch Referenzen auf utf8mb3 bzw. irgendwann auf die utf8mb4 umgebogen werden. Warum mach das so einen großen Unterschied?

    Weil wenn man die vollständigen Unicode Tabellen mit Zeichensatz in UTF8 speichern möchte 4 Bytes pro Zeichen speichern muss (MB4) und mit dem kleineren utf8 utf8mb3 gäbe es dann Probleme z.B. bei manchen neueren Emojis oder Zeichen außerhalb der "Basic Multilingual Plane" weil da die Speicherung mit nur 3 Bytes nicht mehr ausreicht und gerade so Plattformen wie Moodle prüfen da schon beim Installieren äußerst streng darauf, damit später nicht solche Fehler den Einsatz der Plattform vermiesen, die ja auch vielen hunderten Sprachen getestet wird. Mehr dazu siehe in diesem stack overflow Post zum Thema:


    What is the difference between utf8mb4 and utf8 charsets in MySQL?


    Die DB Gurus auf Arbeit haben in den Prüfungen, ob eine Datenbank für den Einsatz der Anwendung in Frage kommt auch die deutschen Umlaute, japanische Zeichen, Sortierbarkeit und z.B. Emojis wie den hier 💩 eingebaut und der war schon oft Stolperstein für den Einsatz.

    WH8000 SE 🥚 20 | WH1000 SE OST22 | WH1000 SE OST23 | WH 🥚🧶🥛🐖 | 🦆 VPS 200 🇺🇦🕊️

    3 Mal editiert, zuletzt von Copro () aus folgendem Grund: 💩

    Gefällt mir 2