Sicherung der Moodle-Installation
Vorlage:Zum Übersetzen
Bei der Sicherung der Moodle-Administration werden alle relevanten Daten Ihres Moodle-Systems gesichert. Diese Sicherungen können wiederhergestellt werden, und man erhält den Zustand des Moodle-Systems zum Zeitpunkt der Sicherung.
Eine regelmäßige Sicherung der Moodle-Installation wird empfohlen, um alle Daten für den Notfall schnell und zuverlässig zur Verfügung zu haben.
Was muss gesichert werden?
Eine Moodle-Installation umfasst drei Teile:
- die Daten, die in der Moodle-Datenbank gespeichert sind,
- die hochgeladenen Dateien und andere Daten im Moodle-Datenverzeichnis
- die Dateien im Moodle-Verzeichnis, die den Moodle-Code enthalten.
Wo sich diese Daten Ihrer Moodle-Installation auf Ihrem Server befinden, steht in der Moodle-Konfigurationsdatei config.php:
- $CFG->dbname speichert den Namen der Datenbank,
- $CFG->prefix speichert das Präfix im Namen der Datenbank-Tabellen,
- $CFG->dataroot verweist auf das Moodle-Datenverzeichnis,
- $CFG->dirroot verweist auf das Moodle-Verzeichnis.
Das wichtigste ist die Sicherung der Moodle-Datenbank und des Moodle-Datenverzeichnisses. Diese Bereiche enthalten Informationen, die sich ständig ändern.
Die Sicherung der Skripten im Moodle-Verzeichnis ist weniger wichtig, da Sie sich jederzeit den aktuellen Code von moodle.org herunterladen können, es sei denn, Sie haben eigene Codeanpassungen vorgenommen - diese müssten Sie sichern.
Sicherung durchführen
Moodle-Datenbank
Es gibt viele Möglichkeiten, eine Sicherung der Datenbank durchzuführen. Wie genau die Sicherung durchgeführt wird hängt vom konkreten Datenbanksystem ab. Im folgenden sehen Sie einen Auszug aus einem Skript, das unter Unix eine Sicherung einer MySQL-Datenbank macht. Es empfiehlt sich, so ein Skript täglich als Cron-Job laufen zu lassen. Als Alternative können Sie phpMyAdmin verwenden, um die Datenbank manuell zu sichern.
cd /my/backup/directory mv moodle-database.sql.gz moodle-database-old.sql.gz mysqldump -h example.com -u myusername --password=mypassword -C -Q -e --create-options mydatabasename > moodle-database.sql gzip moodle-database.sql
Codierung
Bei der Sicherung der Datenbank müssen Sie als Server-Administrator/in auf die korrekte Codierung achten: In den meisten Fällen muss die Datenbank in UTF-8-Codierung gesichert werden.
Prüfen Sie die Sicherung auf mögliche Codierungsprobleme. Es kann z.B. passieren, dass bei Verwendung von mysqldump oder phpMyAdmin nicht alle Daten der Datenbank im korrekten Zeichensatz gesichert werden. Das führt zu unlesbaren Zeichen, wenn die Datenbank wiederhergestellt wird.
Werkzeuge für die Datenbanksicherung
- phpMyAdmin ist das Werkzeug der Wahl bei den meisten Hosting Anbietern.
- MySQLDumper ist ein Backup-Skript für MySQL Datenbanken, das in PHP und Perl geschrieben ist. MySQLDumper verwendet eine proprietäre Technik, um Unterbrechungen bei der Ausführung von PHP-Skripten zu verhindern (normalerweise ist der Parameter max. execution time auf 30 Sekunden gesetzt). Der MySQLDumper berücksichtigt auch die Codierung (siehe oben).
Moodle-Datenverzeichnis
Zur Sicherung des Moodle-Datenverzeichnisses können Sie rsync verwenden, um nur die modifizierten Dateien auf einen anderen Server zu kopieren:
rsync -auvtz --delete -e ssh mysshusername@example.com:/my/server/directory /my/backup/directory/
Wenn Sie das Cron-Skript auf Ihrem Moodle-Server nutzen wollen, dann müssen Sie folgendes Kommando verwenden:
rsync -auvtz --delete -e ssh /path/to/local/folder/ remoteuser@remoteserver:/path/to/remote/folder/
Wenn Sie keine Statusmails von rsync erhalten möchten, dann verweden Sie folgenden Befehl:
rsync -autzq --delete -e ssh /path/to/local/folder/ remoteuser@remoteserver:/path/to/remote/folder/
Wenn Ihr Moodle Hosting Anbieter kein ssh erlaubt (oder nicht anbietet), Sie aber ftp Zugriff mit Nutzername und Passwort haben, dann können Sie auch folgende Befehle verwenden:
mkdir /tmp/remote-folder curlftpfs ftp://username:password@ftp.your-site.com /tmp/remote-folder rsync -auvtz --delete /tmp/remote-folder /my/local/backup/folder/ umount /tmp/remote-folder rmdir /tmp/remote-folder
Die Moodle-Datenbank und die Moodle-Skripten können der Vollständigkeit halber gleich mit kopiert werden (getestet mit cPanel Web-Interface):
wget --http-user=username --http-password=password http://your-site.com:2082/getsqlbackup/moodle.sql.gz wget --http-user=username --http-password=password http://your-site.com:2082/getbackup/backup-your-site.com-`date +"%-m-%d-%Y"`.tar.gz
Moodle-Verzeichnis
Wenn Sie keine eigenen Codeanpassungen vorgenommen haben, können Sie sich jederzeit eine neue Moodle-Installation von moodle.org herunterladen. Dennoch ist es eine gute Idee, die Moodle-Skripten in Ihre vollständige Sicherung der Moodle-Installation mit einzuschließen. Die Schritte sind dieselben wie bei der Sicherung des Moodle-Datenverzeichnisses.
Siehe auch
- Wiederherstellung der Moodle-Site
- Video, das zeigt wie unter Linux eine vollständige Sicherung der Moodle-Installation durchgeführt wird
- Video, das zeigt wie unter Windows eine vollständige Sicherung der Moodle-Installation durchgeführt wird
- Moodle-Migration - Umzug einer Moodle-Site auf einen anderen Server