Benutzer-Werkzeuge

Webseiten-Werkzeuge


 [[anwenderwiki:moodle:update-1.9]] 

Moodle Update von 1.9.x auf 1.9.y durchführen

Es ist empfehlenswert während des Updates den Webserver Apache auszuschalten, so dass kein Benutzer auf das Moodle-System zugreifen kann:

/etc/init.d/apache2 stop

Download von http://download.moodle.org/ (tgz oder zip - Paket mit ca. 14 MB). Von moodle.org wird empfohlen die Versionen nicht zu überspringen. Somit z.B. für moodle 1.7 folgende Reihenfolge einhalten: 1.7 > 1.8 > 1.9

Download von der Konsole am Server als root: (Datei wird dann unter /root abgelegt)

# wget -O /root/moodle199.tgz http://download.moodle.org/stable19/moodle-1.9.9.tgz

1. Überprüfen, ob alle Upgrade-Voraussetzungen erfüllt sind. Dies findet man unter: „Website-Administration > Server > Serverinformationen“.

2. Datenbank-Backup bei einer postgres-Datenbank der paedML

# pg_dump -U postgres -f /root/moodle2010.dump moodle

3. Backup vom moodle-Verzeichnis: Niemals eine alte Version überschreiben!!

# mv /usr/share/moodle /usr/share/moodle.old2010

4. Backup vom moodle-Datenverzeichnis:

# mkdir /var/lib/moodle.old2010
# cp -r /var/lib/moodle/* /var/lib/moodle.old2010

5. Neues moodle entpacken und Konfigurationsdatei setzen. Die config.php ist bei der paedML abgelegt unter /etc/moodle/config.php. Im moodle-Verzeichnis liegt nur ein symlink auf diese Datei.

# cd /usr/share
# tar xvzf /root/moodle199.tgz
# ln -s /etc/moodle/config.php /usr/share/moodle/config.php

6. Zusatzarbeiten: Wenn Sie unter /usr/share/moodle weitere eigene Dateien abgelegt haben, wie z.B. eine Datenschutz/Zustimmungserklärung, müssen Sie diese ins neue Verzeichnis kopieren. Ebenso muss eine evtl. vorhandene .htaccess-Datei wieder ins moodle-Verzeichnis kopiert werden. Ggf. noch die Zugriffsrechte anpassen. Selbst installierte Filter (z.B. geogebra-Filter, questionaire-Modul, feedback-Block/Modul) müssen auch ins neue moodle hineinkopiert werden.

7. Moodle im Administrations-Modus im Browser aufrufen und die Abfrage, ob man aktualisieren will bejahen:

http://10.16.1.1/moodle/admin

Dabei als „wwwadmin“ anmelden. Nun klickt man sich durch viele Statusmeldungen hindurch.

Bei meinem moodle machte jedoch das Update des WIKI-Moduls solche Probleme, dass der Prozess in einer Endlosschleife endete.

Deshalb habe ich die Datenbank und die alte moodle-Verzeichnis wiederhergestellt, das WIKI deinstalliert und ebenso alle übriggebliebenen Datenbank-Tabellen des WIKIs per hand gelöscht (s.u.). Danach lief das Update durch.


Im Fehlerfall: Zurückspielen der Datenbank:

Zunächst muss die defekte Datenbank komplett gelöscht werden und dann wieder neu erzeugt werden. Ein Überschreiben mit der backup-Datei funktionierte bei mir leider nicht:

# /etc/init.d/apache2 stop
# dropdb -U postgres moodle
# createdb -U postgres -E UTF8 moodle
# /etc/init.d/apache2 start

Nun kann die backup-Datei eingespielt werden:

# psql -U postgres -f /root/moodle2010.dump moodle

Der Befehl „pg_restore -c -U postgres -f /root/moodle2010.dump“ führte leider nicht dazu, dass die Datenbank wiederhergestellt wurde - Ursache unbekannt.


Problem: Einzelne Tabellen lassen sich nicht updaten oder neu anlegen. Diese Tabellen nun per Hand einzeln löschen.

Bei mir machte das WIKI Probleme, worauf ich es im alten moodle vor dem Update gelöscht habe und anschließend die Datenbank von wiki-Tabellen gereinigt habe:

# psql -U postgres moodle -c "DROP TABLE mdl_wiki"
# psql -U postgres moodle -c "DROP TABLE mdl_wiki_entries"
# psql -U postgres moodle -c "DROP TABLE mdl_wiki_pages"
# psql -U postgres moodle -c "DROP TABLE mdl_wiki_locks"

Danach die update-Schritte von oben durchführen.


Mit der Datenbank arbeiten

Eine neue Datenbank anlegen

# createdb -U postgres -E unicode -O moodle2 moodle2

und den Zugriff in /etc/postgresql/8.3/main/pg_hba.conf erlauben:

...
host   moodle2   moodle2   127.0.0.1   255.255.255.255   password
...

Einen neuen User anlegen:

# psql -U postgres -c "CREATE USER moodle2;"
# psql -U postgres -c "ALTER USER moodle2 with encrypted password 'abc12345';"

Einloggen:

# psql -U postgres moodle

Befehle:

\l           # Datenbanken zeigen
\dt          # Tabellen auflisten
\?           # alle Kürzel
\q           # beenden
\d <tabelle> # Beschreibung einer Tabelle auflisten
 [[anwenderwiki:moodle:update-1.9]] anwenderwiki/moodle/update-1.9.txt · Zuletzt geändert: 2013/01/13 23:10 von 127.0.0.1