Regelmässiges Backup


Drupal ist ein CMS. Das heisst, eine Seite wird dynamisch mit Daten aus einer Datenbank generiert. Der traditionalle oder statische Weg zum Erstellen einer Seite verläuft meistens wie folgt: Pro Seite wird eine html Datei erstellt und diese wird mit Inhalt gefüllt. Dann wird das ganze auf einen Webserver hochgeladen und die Leute können sich die Sachen anschauen.

Ein CMS verfolgt einen anderen Ansatz: Das Grundgerüst wird erstellt: Layout und Verhalten. Inhalt wird dann direkt via Webinterface erstellt und in einer Datenbank gespeichert. Es gibt also keine lokalen Dateien.

Plötzlich schmiert der Server ab und die Daten sind weg. Bei der statischen Seite kann man ganz einfach die Seiten wieder hochladen, falls jedoch die Datenbank gelöscht ist, dann ist sie gelöscht… Daher empfiehlt sich ein regelmässiges Backup der Datenbank.

Dazu gibt es ein sehr praktisch Modul: Backup. Das Modul hat jedoch noch einen kleinen Fehler, es ist standardmässig nicht in einen Cronjob einbinden. Daher können Backups nur manuell gemacht werden -> das vergisst man sowieso immer und wenn man dann mal ein Backup braucht, dann hat man sicher keines. Daher patched man das Modul am Besten noch. Der nötige Code. Mit dem Patch wird dann pro Cronjob ein Backup gemacht. Backups werden 8 Tage gespeichert und danach wieder gelöscht.

An dieser Stelle noch eine Warnung: In den Kommentaren wurde über Inkonsistenz der Datenbank diskutiert. Ich habe es nicht ins Detail nachverfolgt, aber könnte schon etwas haben. Das Problem ist, dass die Seite nicht im Wartungsmodus ist. Es könnte also vorkommen, dass die DB gespeichert wird und dass während dem Backup neue Einträge in die DB gemacht werden. Ist wohl eher für High Traffic Seiten ein Problem.