Moddle Einstellungen in Plesk

MySQL Einstellungen

MySQL Anpassungen für Moodle in der Datei /etc/mysql/mariadb.conf.d/50-server.cnf

innodb_file_format = Barracuda
innodb_file_per_table = 1
innodb_large_prefix
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake

Danach die Datenbank neu starten „service mariadb restart“

Anscheinend erstellt Plesk die Datenbank trotzdem mit einem anderen encoding. Deswegen muss die Datenbank nach der Installation konvertiert werden. Dazu stellt Moodle ein Skript bereit.

/opt/plesk/php/7.4/bin/php admin/cli/mysql_collation.php --collation=utf8mb4_unicode_ci

Überprüft werden kann das mit folgendem SQL:

SELECT SCHEMA_NAME, default_character_set_name FROM information_schema.SCHEMATA;

In der offiziellen Dokumentation wird empfohlen folgenden Befehl danach auszuführen:

mysqlcheck -u root -p --auto-repair --optimize --all-databases

Wenn die Datenbank über docker wie in Maradb über docker (compose) installieren und in Plesk integrieren installiert wurde muss dieser Befehl angepasst werden:

mysqlcheck -u root --port 3316 --port=3316 -p --protocol=TCP --auto-repair --optimize --all-databases

Zusätzlich muss dann in der config.php von Moodle das encoding angepasst werden:

$CFG->dboptions = array(
  …
  'dbcollation' => 'utf8mb4_unicode_ci',
  …
);

Cronjob

Für Moodle muss ein cronjob eingerichtet werden der unter den Rechten des Benutzer der Webseite laufen sollte.

Auswahl der Benutzer cronjobs
Konfiguration des conjobs

Für Moodle soll jede Minute ein cronjob ausgeführt werden. Hier muss der Pfad zum script angegeben werden. Laut Dokumentation soll der Job jede Minute ausgeführt werden. Etwas resourcen schonender wäre z.B. alle 10 Minuten:

*/10 * * * *
/var/www/vhosts/domain.de/httpdocs/admin/cli/cron.php

Linux: Ubuntu 18.04.4
Plesk: Obsidian 18.0.26

Quelle: https://docs.moodle.org/37/en/MySQL_full_unicode_support
https://docs.moodle.org/38/de/Cron-Job

https://www.a2hosting.com/kb/developer-corner/mysql/convert-mysql-database-utf-8

https://docs.moodle.org/37/en/MySQL_full_unicode_support

https://moodle.org/mod/forum/discuss.php?d=401739

2 Antworten auf „Moddle Einstellungen in Plesk“

  1. Besten Dank für den Artikel, dass mit den Pfad /var/www/vhosts/domain.de/httpdocs/admin/cli/cron.php hat mir echt geholfen. httpdocs/admin/cli/cron.php hat er nicht genommen, obwohl ich im Cronjob Planer explizit für die Website bin.

    Den Cronjob jede Minute ausführen halte ich für sinnlos bei Moodles die nicht allzu stark besucht werden, zumal der Job eh gerne mal 3 Minuten läuft.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert