Hinweis: Sie sind auf den Seiten der Moodle 2.8 Dokumentation. Die Dokumentation der aktuellsten Moodle-Version finden Sie hier: Aktualisierung von Moodle.

Aktualisierung von Moodle: Unterschied zwischen den Versionen

Aus MoodleDocs
Wechseln zu:Navigation, Suche
 
(23 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Installation}}
{{Installation}}


Moodle ist so konzipiert, dass man das System einfach und problemlos von einer Version auf die nächste aktualisieren kann.  
Dieser Artikel beschreibt, wie Sie Moodle aktualisieren. Eine Übersicht über die einzelnen Schritte finden Sie unter [[Aktualisierung in Kürze]].


Änderungen, die Sie am Originalcode bzw. an der Standardinstallation vorgenommen haben (z.B. Installation von Zusatzmodulen Dritter oder Änderungen an den PHP-Skripten), werden bei der Aktualisierung u.U. nicht mit aktualisiert. Das gilt insbesondere für Änderungen der [[Designs|Standarddesigns]], die bei der Aktualisierung überschrieben werden.
==Voraussetzungen prüfen==
Prüfen Sie die Systemanforderungen für die Moodle-Version 2.8 unter Block ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Server > [[Serverinformationen]]''.


Im folgenden werden die einzelnen Schritte einer Aktualisierung detailliert beschrieben.
'''Hinweis''': Beachten Sie, dass Sie nur von Moodle 2.2. oder neueren Versionen auf Moodle 2.8 aktualisieren können. Wenn Ihr Moodle älter ist als 2.2, dann müssen Sie erst auf [https://docs.moodle.org/22/de/Auf_Moodle_2.2_aktualisieren Moodle 2.2. aktualisieren].


==Voraussetzungen prüfen==
==Bevor Sie Ihr Produktivsystem aktualisieren==
'''Wir empfehlen Ihnen dringend, die Aktualisierung auf einer Kopie Ihres Produktivsystems zu testen, um sicherzustellen, dass alles wie gewünscht funktioniert.'''


Nehmen Sie sich die Zeit und lesen Sie noch einmal den Artikel [[Installation von Moodle]]. Prüfen Sie die Systemanforderungen für die Moodle-Version, auf die Sie aktualisieren möchten,  unter Block ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Server > [[Serverinformationen]]''.
==Wichtige Daten sichern==
Detaillierte Informationen dazu finden Sie im Artikel [[Sicherung der Moodle-Installation|Sicherungen]].  


==Aktuelle Daten sichern==
Im wesentlichen müssen Sie drei Bereiche sichern:
Bevor Sie eine Aktualisierung einer produktiven Moodle-Installation durchführen, empfehlen wir dringend, alle wichtigen Daten zu sichern. Für den Fall, dass bei der Aktualisierung wider Erwarten etwas schief gehen sollte, können Sie so problemlos auf die alte Version zurückgreifen.
#Moodle Software (PHP-Skripte von Moodle)
#[[Moodle-Datenverzeichnis]]
#[[Moodle-Datenbank]]


'''Tipp''': Generell ist es eine gute Idee, die Daten täglich automatisch zu sichern.
Erfahrene Administrator/innen wissen, dass es bei größeren Aktualisierungen immer wichtig ist, diese Daten zu sichern. Generell ist es eine gute Idee, diese Daten täglich automatisch zu sichern. Wenn Sie eine Standardinstallation von Moodle betreiben (ohne zusätzliche Plugins, ohne eigene Codeanpassungen), dann läuft die Aktualisierung normalerweise reibungslos durch.


Es gibt drei Bereiche in Moodle, in denen Daten gesichert werden müssen:
'''Tipp''': Prüfen Sie auch, ob Sie Ihre Sicherungen wiederherstellen können, sonst nützen sie nichts!


====1. Das Moodle-Verzeichnis selbst====
==Wartungsmodus aktivieren==
Sichern Sie das [[Moodle-Verzeichnis]] mit den PHP-Skripten. So können Sie später auf Ihre alte [[Moodle-Konfigurationsdatei]] ''config.php'' und alle Zusatzmodule (Aktivitäten, Designs, usw.) zurückgreifen.
Bevor Sie mit der Aktualisierung beginnen, schalten Sie die Moodle-Site in den [[Wartungsmodus]], um zu verhindern, dass sich Nutzer/innen anmelden.


====2. Das Moodle-Datenverzeichnis====
==Prüfen Sie, ob es Aktualisierungen für Ihre Plugins gibt==
Die Daten im [[Moodle-Datenverzeichnis]] (Arbeitsmaterialien, eingreichte Aufgaben, usw.) sind so wichtig, dass Sie ohnehin regelmäßig gesichert werden müssen. Sichern Sie in jedem Fall vor der Aktualisierung das komplette Verzeichnis, denn im Verlauf des Aktualisierungsprozesses kann es zur Umbenennung oder Verschiebung von Unterverzeichnissen kommen.
Wenn Sie die [[Automatische Aktualisierungen|Automatische Aktualisierung]] aktiviert haben, dann können Sie die installierten Plugins automatisch während der Aktualisierung von Moodle aktualisieren. Prüfen Sie auf der Seite ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Plugins > Übersicht'', ob Aktualisierungen vorhanden sind.


Unter Linux können Sie einfach eine temporäre Kopie des [[Moodle-Datenverzeichnis]]ses erstellen:
Wenn Sie Plugins manuell aktualisieren, dann ist es ein guter Zeitpunkt zu prüfen, ob es eine Moodle 2.8 Version für die Plugins gibt, die Sie früher auf Ihrer Moodle-Site installiert haben. Wenn das der Fall ist, laden Sie diese neue(n) Plugin-Version(en) herunter, kopieren Sie sie an die richtige Stelle im Moodle-Code-Verzeichnis (siehe [[Plugins installieren]]).


  mkdir /var/www/moodledata_backup
Die Aktualisierung des Plugins erfolgt dann im Verlauf der Aktualisierung von Moodle.
  cp -r /var/www/moodledata/* /var/www/moodledata_backup


====3. Die Moodle-Datenbank====
Wenn ein veraltetes Plugin den Abbruch der Aktualisierung verursacht, dann löschen Sie den entsprechenden Code direkt auf dem Moodle-Server, anstatt das Plugin in Moodle zu deinstallieren.
Bei einer Aktualisierung wird in den allermeisten Fällen die [[Moodle-Datenbank]] verändert (Tabelle oder Felder neu angelegt oder geändert). Es gibt verschiedene Möglichkeiten, eine Datenbank zu sichern. Im Fall einer MySQL-Datenbank wird die Datenbank durch einen sogenannten Dump in einer einzelnen SQL-Datei gesichert. Beispielhaft zeigt das folgende Kommando, wie unter Unix eine MySQL-Datenbank "moodle" gesichert wird:


  mysqldump -u username -p -C -Q -e --create-options moodle > moodle-backup-2009-01-01.sql
== Neue Moodle-Version installieren ==
Laden Sie sich das Moodle 2.8 Paket von[http://download.moodle.org herunter oder verwenden Sie den Befehl


Ersetzen Sie im obigen Befehl "username" durch Ihren Datenbank-Nutzer, der Zugriff auf die Moodle-Datenbank hat. Die Option "-p" bewirkt, dass das Kennwort des Datenbank-Nutzers abgefragt wird, der hinter der Option "-u" angegeben ist.
    wget http://sourceforge.net/projects/moodle/files/Moodle/stable28/moodle-latest-28.tgz


Wenn die Datenbank auf einem anderen Server liegt, als der, von dem Sie das Sicherungskommando ausführen (normalerweise vom Webserver aus), dann müssen Sie mit der Option "-h" den Server angeben, auf dem die Datenbank liegt:
=== Standardpaket verwenden ===
* Benennen Sie das alte Moodle-Verzeichnis um (z.B. ''/moodle'' -> ''/moodleold'').
* Entpacken Sie den neuen Code und kopieren Sie ihn in das Verzeichnis, in dem die alten Moodle-Skripte vorher lagen (z.B. ''/moodle'').
* Kopieren Sie Ihre alte [[Moodle-Konfigurationsdatei]] ''config.php'' zurück ins Moodle-Verzeichnis (z.B. ''/moodle'').
* Wenn Sie zusätzliche Plugins installiert hatten, laden Sie die entsprechenden neuen Versionen herunter und entpacken Sie diese in den passenden Verzeichnissen (siehe [[Plugins installieren]]). Stellen Sie sicher, dass die Versionen der Plugins zur neuen Moodle-Version passen.
* Kopieren Sie Ihr [[Moodle-Datenverzeichnis]].


  mysqldump -u username -p -h databasehost -C -Q -e --create-options moodle > moodle-backup-2009-01-01.sql
Unter Linux würden diese Schritte so aussehen:
 
Moodle-Verzeichnis umbenennen und neuen Code entpacken:
    mv moodle moodle.backup
    tar xvzf moodle-2.8.tgz
   
   
Sie können auch die Export-Funktionalität der MySQL-Admin-Schnittstelle von Moodle verwenden. Bei dieser Schnitt stelle handelt es sich um eine Integration von [http://www.phpmyadmin.net/home_page/index.php phpMyAdmin] in Moodle. Diese Schnittstelle gehört allerdings nicht zur Standardinstallation. Sie kann unter [http://moodle.org/mod/data/view.php?d=13&rid=448 Module und Plugins] heruntergeladen werden und ist nach der Installation unter ''Website-Administration > Server > Datenbank'' verfügbar.
Alte Moodle-Konfigurationsdatei kopieren und zusätzliche Plugins kopieren:
    cp moodle.backup/config.php moodle
    cp -pr moodle.backup/theme/mytheme moodle/theme/mytheme
    cp -pr moodle.backup/mod/mymod moodle/mod/mymod


'''Hinweise zum SQL-Dump''':
Die Moodle-Konfigurationsdatei für den Webserver lesbar machen:
*Beachten Sie, dass es eine Vielzahl von Optionen für den Befehl "mysqldunp" gibt. Fragen Sie Ihre Systemadministrator oder informieren Sie sich anderweitig, was die Optionen im einzelnen bedeuten und welche Sie verwenden sollten. Z.B. wenn Ihre lokale (Test-)Installation MySQL 5.2 verwendet und Sie ziehen mit Ihrem System auf einen Produktiv-Server um, auf dem MySQL 5.0 oder 4.1 läuft, dann '''müssen''' Sie die Option "--compat=mysql40" verwenden.
    chmod 740 admin/cli/cron.php (some configurations need chmod 750 or chmod 755)
* Die obigen Befehle gelten nur für MySQL-Server! Wenn Sie eine anderes Datenbanksystem (wie Oracle, PostgreSQL, o.a.) verwenden, dann gibt es dort eigene Wekzeuge, um Datenbanken zu sichern!


==Neue Moodle-Software installieren==
=== Git verwenden===
Es gibt zwei Möglichkeiten, um an Moodle heranzukommen:
* als gepacktes Paket (*.zip oder *.tgz) von http://download.moodle.org/
* über [[Git für Administratoren|Git]]


=== Gepacktes Moodle-Paket verwenden ===
Sie können auch das [[Git für Administratoren|Git]] verwenden, um Moodle zu aktualisieren.


Laden Sie sich ein geeignetes Paket von http://download.moodle.org/ herunter und entpacken Sie es im neu angelegten Moodle-Verzeichnis.
===Aktualisierung von Kommandozeile===


'''Achtung''': Überschreiben Sie niemals eine alte Installation! Am besten, Sie benennen Ihr altes [[Moodle-Verzeichnis]] (wo die PHP-Skripte von Moodle gespeichert sind) um und legen ein neues, leeres Verzeichnis mit dem alten Namen an.
Sie können Moodle auch [[Administration über Kommandozeile|von der Kommandozeile aktualisieren]].


Unter Linux etwa lauten die nötigen Befehle:
==Aktualisierung abschließen==
 
Jetzt müssen Sie noch den eignetlichen Aktualisierungsprozess in Moodle anstoßen. Gehen Sie dazu auf die Seite ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Mitteilungen''.
  mv moodle moodle.backup
  tar xvzf moodle-1.x.tgz
 
Als nächstes kopieren Sie Ihre alte [[Moodle-Konfigurationsdatei]] ''config.php'', Ihre Datei ''.htaccess'' (falls vorhanden) und alle weiteren Module, die Sie in Ihrer alten Version zusätzlich installiert hatten, an die entsprechenden Stellen Ihres aktuellen [[Moodle-Verzeichnis|Moodle-Verzeichnisses]]:


  cp moodle.backup/config.php moodle
Moodle erkennt automatisch, dass eine neuere Version auf den Server hochgeladen wurde und startet die Aktualisierung der [[Moodle-Datenbank]] und des [[Moodle-Datenverzeichnis]]ses. Wenn irgendetwas nicht automatisch aktualisiert werden kann, sehen Sie entsprechende Hinweise und Anleitungen, was Sie tun sollen.
  cp -pr moodle.backup/theme/mytheme moodle/theme/mytheme


Vergessen Sie nicht, die Verzeichnisrechte/ -besitzer wieder richtig anzupassen (wenn nötig):
Wenn alles erfolgreich und ohne Fehlermeldungen durchläuft, dann können Sie mit Ihrer neuen Moodle-Version sofort loslegen!


  sudo chown www-data moodle/config.php
'''Hinweis''': Wenn Sie mit mehreren Servern arbeiten, dann sollten Sie nach der Aktualisierung auf allen Servern den Cache löschen: Klicken Sie dazu im Block  ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Entwicklung > Cache löschen''.


Dabei ist "www-data" der Webserver-Nutzer in Ihrem System (meistens "apache" oder "www"). Sie können die richtigen Rechte/Besitzer herausfinden, indem Sie ein "ls -l" auf Ihrem alten Verzeichnis aufrufen und sehen z.B. (neben vielen anderen Zeilen):
===Fatal error: Maximum execution time of 30 seconds exceeded...===
Wenn Sie neben dem englischen Sprachpaket weitere Sprachpakete verwenden, dann kann dieser Fehler auftreten, weil die Aktualisierung des Sprachpakets zu lange dauert. In diesem Fall erhöhen Sie inder PHP-Konfigurationsdatei ''php.ini'' den Wert <pre>max_execution_time = 160</pre>. Dann haben die Moodle-Skripte genügend Zeit, die Sprachpakete zu aktualisieren.
Alternativ können Sie Ihre Moodle-Site vor der Aktualisierung auf englisch umstellen und danach wieder auf die gewünschte Sprache zurückstellen. Siehe dieser Diskussionsbeitrag auf moodle.org: https://moodle.org/mod/forum/discuss.php?d=119598.


  -rw-r--r--  1 apache system    784 Jun 28  2007 config.php  
==Nach der Aktualisierung==
Die Moodle-Konfigurationsdatei ''config.php'' sollte gut funktionieren. Wenn Sie sich jedoch die mitgelieferte Konfigurationsdatei ''config-dist.php'' ansehen, dann finden Sie dort weitere/andere Optionen (z.B. Datenbanktreiber und -einstellungen). Es ist eine gute Idee, die neuen Werte aus der ''config-dist.php'' in Ihre ''config.php'' zu übernehmen.


D.h. der Besitzer der Datei ist "apache", und die Gruppe ist "system".
===Cron===
Das Cron-Skript wurde vollständig überarbeitet (siehe MDL-25499) und unterstützt jetzt sowohl [[Geplante Vorgänge]] als auch Adhoc-Vorgänge.


Sie können das für Ihr neues System wie folgt ändern:
Die Vorteile dieser Änderungen sind:
* Der Zeitplan für jeden Vorgang kann von der Moodle-Administration konfiguriert werden.
* Vorgänge können parallel laufen.
* Die Cron-Prozesse sperren sich gegenseitig, so dass verhindert wird, das ein und derselbe Vorgang von mehreren Cron-Prozessen gleichzeitig bearbeitet wird.
* Cluster mit mehreren identischen Anwendungsknoten werden unterstützt, so dass der Cron-Job auf allen laufen kann.


  chown apache:system config.php
Damit kann der Cron-Job viel häufiger laufen, so dass z.B. Forumsbeiträge schneller per E-Mail verschickt werden können. Es wird dringend empfohlen, dass die Moodle-Administration den Cron-Job mindestens 1x pro Minute laufen lässt.


oder für das gesamte Verzeichnis:
Evtl. müssen Sie auch alle selbstgeschriebenen Skripte anpassen, die die Ausgabe des Cron-Skripts verarbeiten. Es ist nicht mehr möglich, mit solchen Skripten einfach die Cron-Ausgabe <pre>Cron script completed correctly</pre> auszuwerten. Stattdessen können Sie die Fehlerausgaben <pre>task failed</pre> auswerten. Ein paar Tipps dazu finden Sie [[Cron-Job#Fehlerbehandlung bei geplanten Vorgängen|hier]].


  chown apache:system ./*
Vor Moodle 2.8 konnte es passieren, dass ein Fehler in einem Vorgang zum Abbruch des gesamten Cron-Jobs führte. Ab Moodle 2.8 passiert das nicht mehr. Prüfen Sie also die Ausgaben des Cron-Skripts nach der Aktualisierung sorgfältig.


oder rekursiv für das gesamte Verzeichnis und alle Unterverzeichnisse:
===Aufgaben===
Das alte Aufgaben(2.2)-Plugin wurde in der neuen Moodle 2.8. Version gelöscht. Es ist jedoch weiterhin gewährleistet, dass alte Kurssicherungen, die alte Aufgaben(2.2.)-Aktivitäten enthalten sauber wiederhergestellt werden können.


  chown -R apache:system ./*
Wenn Sie immer noch dass alte Aufgaben(2.2)-Plugin verwendet haben, dann sind nach der Aktualisierung alle Aktivitäten diesen Typs verborgen. Um diese Aktivitäten wieder verfügbar zu machen, müssen Sie das [[Aufgaben-Update|das Aktualisierungs-Tool]] laufen lassen.
 
=== Git verwenden===


Sie können auch das [[Git für Administratoren|Git]] verwenden, um Moodle zu aktualisieren.  
Wenn es tatsächlich zwingende Gründe gibt, das alte Aufgaben(2.2)-Plugin weiter zu verwenden, dann müssen Sie den Code auf Moodle 2.8 aktualisieren und dann das Verzeichnis ''moodle/mod/assignment'' durch das entsprechende Verzeichnis von https://github.com/moodlehq/moodle-mod_assignment/releases ersetzen.


==Aktualisierung abschließen==
==Mögliche Probleme in Moodle 2.8==
{{Neu}}
===Neue Summierungsart ''Natürlich'' bei Bewertungen===
Die [[Bewertungen zusammenfassen|Summierungsart]] ''Summe'' wurde umfassend überarbeitet und in ''natürlich'' umbenannt. Wir empfehlen, als Standardeinstellung diese neue Summierungsart ''Natürlich'' zu wählen (wie das bei Neuinstallationen von Moodle 2.8 der Fall ist).
Außerdem wurde die Einstellung ''Zusammenfassen, Kategorien einbeziehen'' gelöscht.


Nach der Installation der neuen Moodle-PHP-Skripte müssen Sie die eigentliche Aktualisierung von Moodle durchführen. Dann wird die [[Moodle-Datenbank]] entsprechend der neuen Version aktualisiert. Gehen Sie dazu auf die Administrationsseite Ihrer Installation:
In allen Kurse, die bisher als Summierungsart (Einstellung ''gesamtergebnis'') die Option ''Summe'' oder die Option ''Zusammenfassen, Kategorien einbeziehen'' verwendet haben, kann es zu geänderten Bewertungen kommen. In diesen Kursen sollten Sie die Bewertungen prüfen.


  http://example.com/moodle/admin
===Trainer/innen können Nutzer/innen aus globalen Gruppen einschreiben===
Trainer/innen haben Zugriff auf die Einschreibemethode [[Einschreibung über globale Gruppen]], wenn diese systemweit aktiviert ist. Wenn Sie das Verhalten der Moodle 2.7 Version in Bezug auf diese Einschreibemethode behalten wollen, dann müssen Sie der Trainer-Rolle das Recht [[Capabilities/enrol/cohort:config|enrol/cohort:config]] entziehen. Siehe MDL-36014.


Moodle erkennt automatisch, dass eine neue Version im [[Moodle-Verzeichnis]] abgelegt wurde und führt nun die entsprechende Aktualisierung der Datenbank durch.
===Scrollen in den Bewertungen und Design-Probleme===
Designs mit nicht-fixen Headers müssen eine .navbar Klasse in ihrer Navigationsleiste haben, damit die scrollbare Anzeige in den Bewertungen funktioniert. Siehe MDL-46658 für mehr Informationen.


Wenn alles glatt läuft und Sie keine Fehlermeldungen erhalten, dann können Sie sofort beginnen, mit der neuen Version zu arbeiten und die neuen Funktionalitäten auszuprobieren.
===Nur für Gruppenmitglieder===
Die [[Experimentelle Einstellungen|experimentelle Einstellung]] ''Gruppierungen aktivieren'' wurde gelöscht. Diese Funktionalität wird jetzt durch die [[Voraussetzungen]] bereitgestellt. Alle Aktivitäten, die bisher nur für bestimmte Gruppierungen oder Gruppen verfügbar waren, erhalten bei der Aktualisierung von Moodle eine entsprechende Gruppen-Voraussetzung:
* Wenn bisher keine Gruppierung gewählt war, lautet die neue Gruppen-Voraussetzung ''(Jede Gruppe)''.
* Wenn bisher eine bestimmte Gruppierung ausgewählt war, wird eine neue Gruppierung-Voraussetzung mit der entsprechenden Gruppierung angelegt.
 
===DragMath gelöscht===
DragMath wird nicht mehr zusammen mit Moodle verbreitet. Es kann als Zusatz-Plugin installiert werden.


'''Achtung''': Wenn Sie eine sehr große Moodle-Installation betreiben (d.h. mehr als 10 000 Kurse und 40 000 Nutzer) und auf Moodle 1.8.x aktualisieren, dann testen Sie die [[Geschwindigkeit]] Ihres Servers, bevor Sie die neue Version freischalten, denn es gibt für diese Version nach wie vor Performanzprobleme.
===MySQL dmlwriteexceptionerror bei der Kurswiederherstellung===
Bei der Wiederherstellung von Kursen kann folgende MySQL Fehlermeldung auftreten:
    Row size too large (>8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help.


==Aktualisierte Version testen==
Betroffen sind alle Moodle-Versionen. Grund ist, dass das MySQL Standard-InnoDB-Dateiformat (Antelope) nicht mehr als 10 Text-Spalten verarbeiten kann. Wir empfehlen dringend, das InnoDB-Dateiformat auf Barracuda umzustellen.


Wenn Sie prüfen möchten, ob das Datenbank-Schema Ihrer aktualisierten [[Moodle-Datenbank]] mit dem Datenbank-Schema einer Neuinstallation übereinstimmt, dann finden Sie nähere Informationen dazu im Artikel [[Datenbank-Schema prüfen]].
Ab Moodle 2.6 gibt es ein spezielles Skript, das bei der Konvertierung hilft:
    php /moodle/admin/cli/mysql_compressed_rows.php


==Mehrere Versionen bei der Aktualisierung überspringen==
Weitere Informationen über MySQL-InnoDB-Dateiformate finden Sie hier:
* http://dev.mysql.com/doc/innodb/1.1/en/glossary.html#glos_antelope
* http://dev.mysql.com/doc/innodb/1.1/en/glossary.html#glos_barracuda


Im allgemeinen empfehlen wir, bei der Aktualisierung keine Version zu überspringen, sondern jede Version "mitzunehmen" (z.B. 1.7 > 1.8 > 1.9 > 2.0). Eine Ausnahme ist folgende: Wenn Sie von Moodle 1.5 oder 1.6 aktualisieren, sollten Sie die Versionen 1.7 und 1.8 auslassen, d.h. 1.5 > 1.6 > 1.9 > 2.0. Grund für diese Ausnahme ist, dass bei der Aktualisierung auf Moodle 1.7 die Standardrolleneinstellungen nicht optimal sind und bei der Aktualisierung auf Moodle 1.8 Probleme mit Gruppen auftreten können.  
===Moodle 2.3, 2.4, 2.5, 2.6 und 2.7 Verbesserungen===
Je nachdem, von welcher Moodle-Version aus Sie auf Moodle 2.8 aktualisieren, empfehlen wir die entsprechenden Abschnitt "Mögliche Probleme in Moodle 2.x" in der jeweiligen Dokumentation zu lesen:
* [https://docs.moodle.org/23/de/Aktualisierung_von_Moodle#Mögliche_Probleme_in_Moodle_2.3 Auf Moodle 2.3 aktualisieren]
* [https://docs.moodle.org/24/de/Aktualisierung_von_Moodle#Mögliche_Probleme_in_Moodle_2.4 Auf Moodle 2.4 aktualisieren]
* [https://docs.moodle.org/25/de/Aktualisierung_von_Moodle#Mögliche_Probleme_in_Moodle_2.5 Auf Moodle 2.5 aktualisieren]
* [https://docs.moodle.org/26/de/Aktualisierung_von_Moodle#Mögliche_Probleme_in_Moodle_2.6 Auf Moodle 2.6 aktualisieren]
* [https://docs.moodle.org/27/de/Aktualisierung_von_Moodle#Mögliche_Probleme_in_Moodle_2.7 Auf Moodle 2.7 aktualisieren]


==Siehe auch==
==Siehe auch==
* [[Installation von Moodle]]
* [[Installation]]
* [[Installation FAQ]]
* [https://docs.moodle.org/19/de/Auf_Moodle_1.8_aktualisieren Auf Moodle 1.8 aktualisieren]
* [https://docs.moodle.org/19/de/Auf_Moodle_1.9_aktualisieren Auf Moodle 1.9 aktualisieren]
* [[Serverinformationen]]
* [http://moodle.org/mod/forum/view.php?id=28 Forum zur Installation] im Kurs ''Using Moodle'' auf moodle.org
* [http://moodle.org/mod/forum/view.php?id=28 Forum zur Installation] im Kurs ''Using Moodle'' auf moodle.org
* [http://docs.moodle.org/dev/Moodle_2.8_release_notes Moodle 2.8 Release Notes] (englisch)
* [http://docs.moodle.org/dev/Upgrade_API Upgrade API] (englisch)


Diskussionsbeiträge im Kurs ''Using Moodle'' auf moodle.org:
*[http://moodle.org/mod/forum/discuss.php?d=56991 Upgrade nightmares.... any help appreciated]
*[http://moodle.org/mod/forum/discuss.php?d=62463 After upgrading i get "Your site may not be secure." msg]
*[http://moodle.org/mod/forum/discuss.php?d=104887 Best practices for QA]
{{Credits}} [https://docs.moodle.org/19/de/Aktualisierung_von_Moodle]


[[Category:Website-Administration]]
[[Category:Website-Administration]]


[[en:Upgrading]]
[[en:Upgrading]]

Aktuelle Version vom 25. Februar 2015, 12:01 Uhr


Dieser Artikel beschreibt, wie Sie Moodle aktualisieren. Eine Übersicht über die einzelnen Schritte finden Sie unter Aktualisierung in Kürze.

Voraussetzungen prüfen

Prüfen Sie die Systemanforderungen für die Moodle-Version 2.8 unter Block Einstellungen > Website-Administration > Server > Serverinformationen.

Hinweis: Beachten Sie, dass Sie nur von Moodle 2.2. oder neueren Versionen auf Moodle 2.8 aktualisieren können. Wenn Ihr Moodle älter ist als 2.2, dann müssen Sie erst auf Moodle 2.2. aktualisieren.

Bevor Sie Ihr Produktivsystem aktualisieren

Wir empfehlen Ihnen dringend, die Aktualisierung auf einer Kopie Ihres Produktivsystems zu testen, um sicherzustellen, dass alles wie gewünscht funktioniert.

Wichtige Daten sichern

Detaillierte Informationen dazu finden Sie im Artikel Sicherungen.

Im wesentlichen müssen Sie drei Bereiche sichern:

  1. Moodle Software (PHP-Skripte von Moodle)
  2. Moodle-Datenverzeichnis
  3. Moodle-Datenbank

Erfahrene Administrator/innen wissen, dass es bei größeren Aktualisierungen immer wichtig ist, diese Daten zu sichern. Generell ist es eine gute Idee, diese Daten täglich automatisch zu sichern. Wenn Sie eine Standardinstallation von Moodle betreiben (ohne zusätzliche Plugins, ohne eigene Codeanpassungen), dann läuft die Aktualisierung normalerweise reibungslos durch.

Tipp: Prüfen Sie auch, ob Sie Ihre Sicherungen wiederherstellen können, sonst nützen sie nichts!

Wartungsmodus aktivieren

Bevor Sie mit der Aktualisierung beginnen, schalten Sie die Moodle-Site in den Wartungsmodus, um zu verhindern, dass sich Nutzer/innen anmelden.

Prüfen Sie, ob es Aktualisierungen für Ihre Plugins gibt

Wenn Sie die Automatische Aktualisierung aktiviert haben, dann können Sie die installierten Plugins automatisch während der Aktualisierung von Moodle aktualisieren. Prüfen Sie auf der Seite Einstellungen > Website-Administration > Plugins > Übersicht, ob Aktualisierungen vorhanden sind.

Wenn Sie Plugins manuell aktualisieren, dann ist es ein guter Zeitpunkt zu prüfen, ob es eine Moodle 2.8 Version für die Plugins gibt, die Sie früher auf Ihrer Moodle-Site installiert haben. Wenn das der Fall ist, laden Sie diese neue(n) Plugin-Version(en) herunter, kopieren Sie sie an die richtige Stelle im Moodle-Code-Verzeichnis (siehe Plugins installieren).

Die Aktualisierung des Plugins erfolgt dann im Verlauf der Aktualisierung von Moodle.

Wenn ein veraltetes Plugin den Abbruch der Aktualisierung verursacht, dann löschen Sie den entsprechenden Code direkt auf dem Moodle-Server, anstatt das Plugin in Moodle zu deinstallieren.

Neue Moodle-Version installieren

Laden Sie sich das Moodle 2.8 Paket von[http://download.moodle.org herunter oder verwenden Sie den Befehl

   wget http://sourceforge.net/projects/moodle/files/Moodle/stable28/moodle-latest-28.tgz

Standardpaket verwenden

  • Benennen Sie das alte Moodle-Verzeichnis um (z.B. /moodle -> /moodleold).
  • Entpacken Sie den neuen Code und kopieren Sie ihn in das Verzeichnis, in dem die alten Moodle-Skripte vorher lagen (z.B. /moodle).
  • Kopieren Sie Ihre alte Moodle-Konfigurationsdatei config.php zurück ins Moodle-Verzeichnis (z.B. /moodle).
  • Wenn Sie zusätzliche Plugins installiert hatten, laden Sie die entsprechenden neuen Versionen herunter und entpacken Sie diese in den passenden Verzeichnissen (siehe Plugins installieren). Stellen Sie sicher, dass die Versionen der Plugins zur neuen Moodle-Version passen.
  • Kopieren Sie Ihr Moodle-Datenverzeichnis.

Unter Linux würden diese Schritte so aussehen:

Moodle-Verzeichnis umbenennen und neuen Code entpacken:

   mv moodle moodle.backup
   tar xvzf moodle-2.8.tgz

Alte Moodle-Konfigurationsdatei kopieren und zusätzliche Plugins kopieren:

   cp moodle.backup/config.php moodle
   cp -pr moodle.backup/theme/mytheme moodle/theme/mytheme
   cp -pr moodle.backup/mod/mymod moodle/mod/mymod

Die Moodle-Konfigurationsdatei für den Webserver lesbar machen:

   chmod 740 admin/cli/cron.php (some configurations need chmod 750 or chmod 755)

Git verwenden

Sie können auch das Git verwenden, um Moodle zu aktualisieren.

Aktualisierung von Kommandozeile

Sie können Moodle auch von der Kommandozeile aktualisieren.

Aktualisierung abschließen

Jetzt müssen Sie noch den eignetlichen Aktualisierungsprozess in Moodle anstoßen. Gehen Sie dazu auf die Seite Einstellungen > Website-Administration > Mitteilungen.

Moodle erkennt automatisch, dass eine neuere Version auf den Server hochgeladen wurde und startet die Aktualisierung der Moodle-Datenbank und des Moodle-Datenverzeichnisses. Wenn irgendetwas nicht automatisch aktualisiert werden kann, sehen Sie entsprechende Hinweise und Anleitungen, was Sie tun sollen.

Wenn alles erfolgreich und ohne Fehlermeldungen durchläuft, dann können Sie mit Ihrer neuen Moodle-Version sofort loslegen!

Hinweis: Wenn Sie mit mehreren Servern arbeiten, dann sollten Sie nach der Aktualisierung auf allen Servern den Cache löschen: Klicken Sie dazu im Block Einstellungen > Website-Administration > Entwicklung > Cache löschen.

Fatal error: Maximum execution time of 30 seconds exceeded...

Wenn Sie neben dem englischen Sprachpaket weitere Sprachpakete verwenden, dann kann dieser Fehler auftreten, weil die Aktualisierung des Sprachpakets zu lange dauert. In diesem Fall erhöhen Sie inder PHP-Konfigurationsdatei php.ini den Wert

max_execution_time = 160

. Dann haben die Moodle-Skripte genügend Zeit, die Sprachpakete zu aktualisieren.

Alternativ können Sie Ihre Moodle-Site vor der Aktualisierung auf englisch umstellen und danach wieder auf die gewünschte Sprache zurückstellen. Siehe dieser Diskussionsbeitrag auf moodle.org: https://moodle.org/mod/forum/discuss.php?d=119598.

Nach der Aktualisierung

Die Moodle-Konfigurationsdatei config.php sollte gut funktionieren. Wenn Sie sich jedoch die mitgelieferte Konfigurationsdatei config-dist.php ansehen, dann finden Sie dort weitere/andere Optionen (z.B. Datenbanktreiber und -einstellungen). Es ist eine gute Idee, die neuen Werte aus der config-dist.php in Ihre config.php zu übernehmen.

Cron

Das Cron-Skript wurde vollständig überarbeitet (siehe MDL-25499) und unterstützt jetzt sowohl Geplante Vorgänge als auch Adhoc-Vorgänge.

Die Vorteile dieser Änderungen sind:

  • Der Zeitplan für jeden Vorgang kann von der Moodle-Administration konfiguriert werden.
  • Vorgänge können parallel laufen.
  • Die Cron-Prozesse sperren sich gegenseitig, so dass verhindert wird, das ein und derselbe Vorgang von mehreren Cron-Prozessen gleichzeitig bearbeitet wird.
  • Cluster mit mehreren identischen Anwendungsknoten werden unterstützt, so dass der Cron-Job auf allen laufen kann.

Damit kann der Cron-Job viel häufiger laufen, so dass z.B. Forumsbeiträge schneller per E-Mail verschickt werden können. Es wird dringend empfohlen, dass die Moodle-Administration den Cron-Job mindestens 1x pro Minute laufen lässt.

Evtl. müssen Sie auch alle selbstgeschriebenen Skripte anpassen, die die Ausgabe des Cron-Skripts verarbeiten. Es ist nicht mehr möglich, mit solchen Skripten einfach die Cron-Ausgabe

Cron script completed correctly

auszuwerten. Stattdessen können Sie die Fehlerausgaben

task failed

auswerten. Ein paar Tipps dazu finden Sie hier.

Vor Moodle 2.8 konnte es passieren, dass ein Fehler in einem Vorgang zum Abbruch des gesamten Cron-Jobs führte. Ab Moodle 2.8 passiert das nicht mehr. Prüfen Sie also die Ausgaben des Cron-Skripts nach der Aktualisierung sorgfältig.

Aufgaben

Das alte Aufgaben(2.2)-Plugin wurde in der neuen Moodle 2.8. Version gelöscht. Es ist jedoch weiterhin gewährleistet, dass alte Kurssicherungen, die alte Aufgaben(2.2.)-Aktivitäten enthalten sauber wiederhergestellt werden können.

Wenn Sie immer noch dass alte Aufgaben(2.2)-Plugin verwendet haben, dann sind nach der Aktualisierung alle Aktivitäten diesen Typs verborgen. Um diese Aktivitäten wieder verfügbar zu machen, müssen Sie das das Aktualisierungs-Tool laufen lassen.

Wenn es tatsächlich zwingende Gründe gibt, das alte Aufgaben(2.2)-Plugin weiter zu verwenden, dann müssen Sie den Code auf Moodle 2.8 aktualisieren und dann das Verzeichnis moodle/mod/assignment durch das entsprechende Verzeichnis von https://github.com/moodlehq/moodle-mod_assignment/releases ersetzen.

Mögliche Probleme in Moodle 2.8

Neu
in Moodle 2.8!

Neue Summierungsart Natürlich bei Bewertungen

Die Summierungsart Summe wurde umfassend überarbeitet und in natürlich umbenannt. Wir empfehlen, als Standardeinstellung diese neue Summierungsart Natürlich zu wählen (wie das bei Neuinstallationen von Moodle 2.8 der Fall ist). Außerdem wurde die Einstellung Zusammenfassen, Kategorien einbeziehen gelöscht.

In allen Kurse, die bisher als Summierungsart (Einstellung gesamtergebnis) die Option Summe oder die Option Zusammenfassen, Kategorien einbeziehen verwendet haben, kann es zu geänderten Bewertungen kommen. In diesen Kursen sollten Sie die Bewertungen prüfen.

Trainer/innen können Nutzer/innen aus globalen Gruppen einschreiben

Trainer/innen haben Zugriff auf die Einschreibemethode Einschreibung über globale Gruppen, wenn diese systemweit aktiviert ist. Wenn Sie das Verhalten der Moodle 2.7 Version in Bezug auf diese Einschreibemethode behalten wollen, dann müssen Sie der Trainer-Rolle das Recht enrol/cohort:config entziehen. Siehe MDL-36014.

Scrollen in den Bewertungen und Design-Probleme

Designs mit nicht-fixen Headers müssen eine .navbar Klasse in ihrer Navigationsleiste haben, damit die scrollbare Anzeige in den Bewertungen funktioniert. Siehe MDL-46658 für mehr Informationen.

Nur für Gruppenmitglieder

Die experimentelle Einstellung Gruppierungen aktivieren wurde gelöscht. Diese Funktionalität wird jetzt durch die Voraussetzungen bereitgestellt. Alle Aktivitäten, die bisher nur für bestimmte Gruppierungen oder Gruppen verfügbar waren, erhalten bei der Aktualisierung von Moodle eine entsprechende Gruppen-Voraussetzung:

  • Wenn bisher keine Gruppierung gewählt war, lautet die neue Gruppen-Voraussetzung (Jede Gruppe).
  • Wenn bisher eine bestimmte Gruppierung ausgewählt war, wird eine neue Gruppierung-Voraussetzung mit der entsprechenden Gruppierung angelegt.

DragMath gelöscht

DragMath wird nicht mehr zusammen mit Moodle verbreitet. Es kann als Zusatz-Plugin installiert werden.

MySQL dmlwriteexceptionerror bei der Kurswiederherstellung

Bei der Wiederherstellung von Kursen kann folgende MySQL Fehlermeldung auftreten:

   Row size too large (>8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help.

Betroffen sind alle Moodle-Versionen. Grund ist, dass das MySQL Standard-InnoDB-Dateiformat (Antelope) nicht mehr als 10 Text-Spalten verarbeiten kann. Wir empfehlen dringend, das InnoDB-Dateiformat auf Barracuda umzustellen.

Ab Moodle 2.6 gibt es ein spezielles Skript, das bei der Konvertierung hilft:

   php /moodle/admin/cli/mysql_compressed_rows.php

Weitere Informationen über MySQL-InnoDB-Dateiformate finden Sie hier:

Moodle 2.3, 2.4, 2.5, 2.6 und 2.7 Verbesserungen

Je nachdem, von welcher Moodle-Version aus Sie auf Moodle 2.8 aktualisieren, empfehlen wir die entsprechenden Abschnitt "Mögliche Probleme in Moodle 2.x" in der jeweiligen Dokumentation zu lesen:

Siehe auch