Sicherung und Wiederherstellung FAQ

Wechseln zu: Navigation, Suche

Baustelle.png Diese Seite muss übersetzt werden. Greif zu!
Wenn du dich um diesen Artikel kümmern willst, dann kennzeichne das, indem du die Vorlage {{Übersetzen}} durch die Vorlage {{ÜbersetzenVergeben}} ersetzt.
Wenn du mit deiner Arbeit fertig bist, dann entferne die Vorlage aus dem Artikel.
Danke für deine Mitarbeit!

Inhaltsverzeichnis

Wie sichere ich einen Kurs?

Siehe Kurssicherung und Automatische Kurssicherung.

Wie stelle ich einen Kurs wieder her?

Siehe Kurswiederherstellung.

Wie sichere ich meine gesamte Moodle-Installation?

Siehe Sicherung der Moodle-Installation.

Was sind die Pros und Cons von Kurssicherung bzw. Sicherung der Moodle-Installation?

Die Sicherung der Moodle-Installation wird empfohlen, um eine vollständige Sicherung aller relevanten Daten für den Notfall schnell verfügbar zu haben.

Die Automatische Kurssicherung ist teurer in Bezug auf Zeitaufwand, CPU-Last und Speicherplatzbedarf. Auch die Wiederherstellung Ihrer Moodle-Installation im Notfall dauert länger. Kurssicherungen sind nützlich, um "frische" Kopien von Kursen zu haben, die wiederverwendet werden sollen, sie sollten aber niemals als alleinige Backup-Strategie dienen (es sei denn, Ihr Hosting-Provider erlaubt keine vollständige Sicherung der Moodle-Installation).

Warum sind die automatischen Kurssicherungen viel kleiner als die manuell erstellten Kurssicherungen?

Das hat mit Code-Design zu tun. Aufgrund der Art, wie Dateien in Moodle 2 verwaltet werden, müssen Dateien nicht (mehr) in die Kurssicherung einbezogen werden, wenn Sie Kurse in derselben Moodle-Site wiederherstellen wollen. Deshalb werden Dateien bei der automatischen Kurssicherung ausgeschlossen, was den Speicherplatzbedarf und den Zeitaufwand erheblich reduziert.

Welche Daten sind in einer Kurssicherung nicht enthalten?

Wenn Sie bei einer Kurssicherung alle Optionen auswählen, dann werden fast alle kursspezifischen Daten gesichert. Beachten Sie jedoch, dass folgendes nicht gesichert wird:

  • Testfragen werden nur gesichert, wenn mindestens eine Frage einer Fragenkategorie tatsächlich zu einem Test gehört.
  • Bewertungsskalen werden nur gesichert, wenn sie in mindestens einer Lernaktivität verwendet werden.

Der Prozess endet mit einer Fehlermeldung: "Error: An error occurred deleting old backup data". Was kann ich tun?

Es kann passieren, dass das Sichern oder Wiederherstellen eines Kurses mit der Fehlermeldung

 "Error: An error occurred deleting old backup data".

endet, d.h. alte Sicherungsdaten nicht gelöscht werden können. Im einzelnen passiert während des Prozesses der Kurssicherung oder -wiederherstellung folgendes:

  1. Alte Datensätze aus der Tabelle mdl_backup_ids der Moodle-Datenbank löschen: Prüfen Sie, ob diese Tabelle existiert, reparieren Sie ggf. die Tabelle und versuchen Sie es erneut.
  2. Alte Datensätze aus der Tabelle mdl_backup_files der Moodle-Datenbank löschen: Prüfen Sie, ob diese Tabelle existiert, reparieren Sie ggf. die Tabelle und versuchen Sie es erneut.
  3. Alte Dateien im Unterverzeichnis moodledata/temp/backup des Moodle-Datenverzeichnisses löschen: Löschen Sie dieses Unterverzeichnis auf dem Server und versuchen Sie es erneut.

Bemerkung zu den Punkten 1 und 2: Es gibt verschiedene Möglichkeiten, Tabellen in der Moodle-Datenbank zu reparieren, u.a. mit Hilfe von MySQL Admin.

Bemerkung zu Punkt 3: Die Fehlermeldung besagt, dass das Unterverzeichnis moodledata/temp/backup nicht leer ist und gibt den Pfad zu diesem Unterverzeichnis aus. Wenn Sie per FTP auf dieses Unterverzeichnis zugreifen, können Sie den Inhalt prüfen und löschen. Es kann sein, dass das Unterverzeichnis einfach weitere, leere Verzeichnisse enthält - löschen Sie diese. Oder löschen Sie das gesamte Verzeichnis moodledata/temp/backup. Das kann u.U. etwas länger dauern, aber dafür evtl. mehrere Probleme auf einmal lösen.

Der Prozess endet mit einer Fehlermeldung: "XML error: not well-formed (invalid token) at line YYYY". Was kann ich tun?

This problem can appear at any point in the restore process. It's caused when the XML parser detects something incorrect in the backup file that prevent correct operation. Usually, it's caused by some "illegal" characters added in the original course due to some copy/paste of text containing them (control characters, or invalid sequences...).

The best method to handle this issue is:

  • Unzip the problematic backup file under one empty folder.
  • Open the moodle.xml with Firefox. It will show you where (exact char) the problem is happening.
  • Edit the moodle.xml file with some UTF8-compatible editor and delete such characters. Save changes.
  • Test the moodle.xml file again with Firefox until no error was displayed.
  • Zip everything again (all the folder contents but not the folder itself!).
  • Restore the course. It should work now.
  • Restore still not working? See the next question.

Also, if possible, it's highly recommended to solve those problems in the original course too from Moodle itself. Once "repaired" there, problems will be out if you create new backup files in the future.

Der Prozess endet mit einer Fehlermeldung: "moodle xml not found at root level of zip file". Was kann ich tun?

If you are restoring from a zip file backup make sure the moodle.xml file is at the root level. To ensure this:

  1. Unzip the backup file of the course (example: mycourse.zip)
  2. Once the file is unzipped, open the folder (example: mycourse).
  3. Select the folders within the mycourse folder AND the moodle.xml file and create a zip of those item (example: mycourse_new.zip)
  4. Upload the new zip file (example: mycourse_new.zip) and restore from that.

If the backup file is guaranteed to be correct, check paths to external files (zip, unzip). Incorrect settings also lead to this error message (see the Using Moodle forum discussion moodle.xml not found in root... and MDL-14812).

Der Prozess endet mit einer Fehlermeldung: "An error occurred while copying the zip file...". Was kann ich tun?

This problem is most likely caused by a permissions issue in the destination directory. Backup files are copied to "XXX/backupdata" under your dataroot directory (where XXX is the id of the course being backed up).

The problem could also be caused by a disk being full, though this is far less likely.

To obtain precise information about what's happening, you can enable debug messages in Administration > Server > Debugging (select the maximum level - DEVELOPER) and/or check the web server error logs.

I Still get an XML error. How can I clean the borked XML file?

In some cases XML backup files may contain characters causing the restore process to abort, even after the steps described in the previous question. In such cases you may want to try the following:

  • Unzip the problematic Moodle backup file under one empty folder. Moodle will create the course file folders as long as the unclean moodle.xml file. Please unzip using the Moodle unzip feature.
  • Rename the unclean moodle.xml file to moodle-unclean.xml.
  • If you don't have access to your Moodle server's command prompt, using the Moodle zip feature, zip the moodle-unclean.xml file only, download the zip file locally and unzip it. It is very important to download the xml file in zipped format to avoid unwanted character encoding when transferring from an operating system to another.
  • Move the downloaded Atlassian XML Cleaner Utility in the same folder where is your moodle-unclean.xml file.
  • Issue the following command from the command prompt:
java -jar atlassian-xml-cleaner-0.1.jar moodle-unclean.xml > moodle.xml
  • If you launched the utility on your local computer, zip the just created (and hopefully cleaned) moodle.xml file and upload it in the same place from where you downloaded the moodle-unclean.xml file. Once uploaded, unzip it using the Moodle unzip feature.
  • Zip everything again (all the folder contents but the folder itself!).
  • Restore the course. It should work now.

Was bedeutet die Meldung: "Einige Ihrer Kurse wurden nicht gesichert !!"?

Es gibt drei mögliche Gründe für diese Meldung:

  1. Fehler - das passiert, wenn bei der automatischen Kurssicherung ein Fehler aufgetreten ist und die Sicherung eines bestimmten Kurses nicht abgeschlossen werden konnte. Das sind "kontrollierte" Fehler, d.h. die automatische Kurssicherung wird einfach mit dem nächsten Kurs fortgesetzt.
  2. Nicht abgeschlossen - das passiert, wenn die Kurssicherung aus ungeklärten Gründen abbricht. Wenn der Cron-Job das nächste Mal ausgeführt wird, erkennt er, dass die letzte automatische Kurssicherung fehlgeschlagen ist und setzt die Sicherung fort, wobei der problematische Kurs übersprungen wird. Eine mögliche Lösung besteht darin, die Apache/PHP Limits zu erhöhen (memory, time of execution...). Wenn Sie einen Blick in Ihre Log-Dateien werfen, können Sie prüfen, ob das Problem in ganz bestimmten Zeitintervallen auftritt (das deutet darauf hin, dass die PHP-Einstellung max_execution_time zu niedrig gesetzt ist).
  3. Übersprungen - das passiert, wennn ein Kurs für Teilnehmer nicht verfügbar ist und im letzten Monat (31 Tage lang) nicht geändert wurde. Das ist keine Fehlersituation, sondern entspricht der normalen Moodle-Funktionalität, um insbesondere bei großen Installationen mit vielen alten, nicht verfügbaren Kursen die Prozessdauer zu verkürzen.

Warum werden einige Kurse bei der automatischen Kurssicherung übersprungen?

Automatische Kurssicherungen: Einstellungen Überspringen
Die Routinen der Automatischen Kurssicherung von Moodle werden angewiesen, Kurse automatisch zu überspringen, basierend auf drei Einstellungen unter dem Menupunkt Website-Administration (oder im Block Einstellungen) > Website-Administration) > Kurse > Sicherung > Automatische Sicherung. Die Moodle-Administratoren verwenden diese Einstellungen, um festzulegen, ob die automatische Kurssicherung Verborgene Kurse überspringen (Standard: 'Ja'), Unveränderte Kurse überspringen (Standard: '30 Tage'), und Seit der letzten Sicherung unveränderte Kurse überspringen (Standard: 'Nein') soll. Bei der automatischen Kurssicherung werden all jene Kurse übersprungen, die ein Kriterium erfüllen.

Warum bricht die Kurswiederherstellung ab?

Wenn Sie versuchen, einen Kurs in einer älteren Moodle-Version wiederherzustellen als der, in der der Kurs gesichert wurde, dann kann dies zu Fehlern und zum Abbruch der Kurswiederherstellung führen. Achten Sie also darauf, dass die Moodle-Version bei der Wiederherstellung dieselbe ist wie bei der Sicherung oder neuer als die Sicherung.

Wenn die Wiederherstellung unerwartet und ohne Fehlermeldung abbricht, dann aktivieren Sie das Debugging und versuchen Sie es erneut. Die dann angezeigten Fehlermeldungen können bei der Problemlösung helfen - wenden sie sich damit an die Experten in den jeweiligen Foren des Kurses Using Moodle auf moodle.org.

Die Wiederherstellung bricht mit folgender Meldung ab: "Der Versuch, das Nutzerkonto XXX wiederherzustellen, wird Probleme bereiten"

Diese Meldung wird angezeigt, wenn

  1. die Moodle-Site, in der Sie den Kurs wiederherstellen, ein Nutzerkonto XXX (XXX ist der Anmeldename) hat – oft der Administrator,
  2. die Kurssicherung einen Nutzer XXX (derselbe Anmeldename) enthält und
  3. diverse Prüfungen ergeben, dass diese Nutzerkonten XXX in der Zielseite und in der Sicherungsdatei nicht übereinstimmen.

Normalerweise handelt es sich bei dieser Meldung um den Admin-Nutzer (den es in allen Moodle-Installationen gibt).

If 1, 2 and 3 are all true, the restore process stops in order to prevent the backup user xxxx's activities (forum posts, quiz attempts, assignment uploads, etc) from being associated with the target site user xxxx.

Damit beide Nutzerkonten als übereinstimmend erkannt werden, können Sie folgendes tun:

a) Entpacken Sie die Sicherungsdatei mittels zip und ändern Sie in der Datei users.xml den entsprechenden Nutzerdatensatz so, dass die Datenfelder
email
und <firstaccess> mit den entsprechenden Werten der Moodle-Site, in der Sie den Kurs wiederherstellen wollen, übereinstimmen.

Oder: b) Ändern Sie die Werte im Nutzerdatensatz der Moodle-Site so, dass sie mit den Daten aus der Datei users.xml übereinstimmen.

c) In Moodle 3.0.3 onwards and for admin user conflicts only, enable the setting 'Allow admin conflict resolution' in Site admin > Courses > Backups > General import defaults. This will result in the username in the backup file being renamed to 'admin_xyz'.

Warum funktionieren einige Links im wiederhergestellten Kurs nicht (mehr)?

Damit Links bei der Kurssicherung- und wiederherstellung korrekt dargestellt werden, müssen die Links als vollständige URLs angegeben sein, z.B.
http://site.com/mod/resource/view.php?id=xxx
. Relative URLs, z.B.
/mod/resource/view.php?id=xxx
,
../resource/view.php?id=xxx
oder
view.php?id=xxx
können nicht korrekt gesichert und wiederhergestellt werden.

Restoring a course results in broken HTML tags. What can I do?

This has been known to be caused by older versions of libxml2 and PHP - try updating them to the latest versions.

How can I extract original files from a Moodle backup file?

If you really want to get original files from the backup file (an ".mbz" file) you downloaded (using the backup and restore feature), you can do so in much the same way as is suggested above.

The backup file can actually be opened with any zip/unzip program you can download. Once you open the file, you need to extract:

   The files.xml file.
   The files directory (folder).

Next step would be to open the "files.xml" file in a text editor, and:

   Search for the name of each file you want to get.
   Take note of the value of the corresponding contenthash tag.
   In the "files" folder you extracted, locate the file whose name is the same as the value of the contenthash and which will always be located in a folder whose name corresponds to the two first characters of the file name.

For example, let's assume there is a "backup_courses-120730.mbz" file of which the "files.xml" file and the "files" folder have been extracted. There is a PDF file named "Leadership.pdf" that is required for another purpose.

Open the files.xml file and:

1. Search for the string "Leadership.pdf", which in this case is found under the following <file id...> group tag:

 <file id="12345">
 <contenthash>fb6cf43a9b2d432403c70a2cb4c340dbb6225631</contenthash>
               :
 <filename>Leadership.pdf</filename>
               :
 <license>allrightsreserved</license>
 <sortorder>1</sortorder>
 </file>

2. Take note of the corresponding contenthash value: fb6cf43a9b2d432403c70a2cb4c340dbb6225631.

3. As the first two characters of the contenthash are "fb", open the "fb" folder inside the "files" directory (which was previously extracted), and there is a file named "fb6cf43a9b...". Rename that file as "Leadership.pdf", and then move it to another location. Repeat this for all the files required, using the correct contenthash value of course.

MySQL dmlwriteexception error when restoring a course

If you obtain a dmlwriteexception error when restoring a course, it is recommended that InnoDB tables are converted to the Barracuda file format. See the section 'Converting InnoDB tables to Barracuda' in Administration via command line for details of why this is recommended plus information on a tool for converting tables.

Weitere Fragen?

Schreiben Sie bitte in das Backup and Restore-Forum im Kurs Using Moodle auf moodle.org.

Siehe auch

Diskussionsbeiträge im Kurs Using Moodle auf moodle.org: