Alex: Backup von Dateien und DB

Beitrag lesen

Hallo,

da ich mit der Test/Beta-Phase meines Projekts jetzt so langsam fertig bin ist mir (ja, ich weiß - zu spät ;)) eingefallen, dass ich doch mal ein Datensicherungskonzept aufstellen könnte.

Ohne lange nach fertigen Lösungen zu suchen habe ich deshalb heute mal begonnen ein Backup-Tool (in PHP) zu programmieren.

Die Dateien werden in ein Tar-Archiv verfrachtet und dann per FTP auf einen anderen Server geladen. Danach wird - wenn der Upload geklappt hat - die Datei gelöscht. Das klappt schon wunderbar.

Für die Datenbank werde ich dann einen Dump erzeugen lassen, der auch auf den Server geladen wird.

Im Logfile wird alles protokolliert, was passiert ist (z.B. Packen der DAteien, Verbindung FTP, Upload FTP, Dateiname etc.). So habe ich also immer auf dem Produktivserver das Logfile mit sämtlichen Dateinamen (und damit auch Zeitpunkten) der Sicherungen. So kann ich erstens schnell schauen, wann gesichert wurde und 2. würde es auch eher auffallen, wenn etwas am FTP-Server fehlt.

Ich hoffe das klingt bis jetzt so vernünftig. Hättet ihr es auch so gemacht? Was würdet ihr anders machen? Würdet ihr eventuell doch ein fertiges Tool nutzen? (Mir wäre es hier wichtig, das es zumindest voll in mein Admin-Backend von dem Projekt integrierbar ist)

Jetzt aber zu noch ungelösten Fragen - hier bräuchte ich Tipps von erfahreneren Programmierern :)

Wie oft soll so eine Sicherung gemacht werden?
Sicherung der Dateien:
Die Website an sich ist denke ich mal schon sehr gut gesichert. Die Skripte etc. ändern sich nicht sehr häufig. Wenn es Änderungen gibt, läuft das über meinen Computer (Dreamweaver,  Site) die Dateien sind also in der gleichen Struktur auch auf meiner Computer-Festplatte. Dann arbeite ich auch noch mit SVN - die Daten sind da also auch nochmal gesichert (aber leider noch auf der gleichen Festplatte, obwohl ich zwei interne habe...). Zusätzlich macht der Computer noch täglich ein Backup auf meinen NAS.

Das einzige Problem ist, dass User Bilder hochladen können. Die sind nicht auf meinem Laptop - oder zumindest nicht immer alle. Deswegen ist ein Backup also schon mal sehr wichtig.

Wie häufig wird so ein Backup bei einer professionellen Webanwendung gemacht? Ich habe für den Cronjob jetzt mal eine Voreinstellung von "monatlich" - das könnte aber zu Problemen führen. Obwohl die Bilder eigentlich nicht sonderlich wichtig sind.

Ein tägliches Full-Backup würde aber auch die 30GB des FTP-Servers ziemlich bald sprengen. Hierzu die nächste Frage - wie lange hebt man solche Backups auf?

Die Lösung des Problems wäre also wohl ein inkrementelles Backup. Das geht mit Tar auch irgendwie, oder? Ich habe schon etwas danach Gegoogelt aber ganz habe ich es noch nicht kappiert...

Zur Datenbank:
Die ist sehr wichtig und da tut sich auch jeden Tag einiges - hoffentlich ;)
Ich lasse das den Cronjob jetzt also täglich machen. Reicht das oder wird das normalerweise noch öfters gemacht?

Hier auch wieder die Frage, wie lange hebt man es auf? Bei der DB ist es aber nicht ganz so wild, weil sie nicht so groß ist, wie das Bakcup der Dateien.

So jetzt habe ich aber viel geschrieben. Ich würde mich einfach über ein bisschen Feedback zu dem ganzen Thema freuen. Vielleicht kennt auch jemand einen guten Link den er mir diesbezüglich empfehlen kann...

Vielen Dank schon mal!

Alex