Backup für alle Fälle

  • Guten Morgen!


    Szenario:

    Eines Tages komme ich in der Früh in die Schule und die Sekretärinnen sind ganz aufgeregt: "Schule intern geht nicht mehr!"

    Beruhigend wäre, wenn ich dann sagen könnte: "Kein Problem, ich spiele das Backup von letzten Freitag ein!"


    Wie können wir so ein Backup erstellen (One-Click-Lösung ;) bzw. wieder aufspielen?


    Per ftp haben wir bereits unsere ganze Schule intern-Homepage lokal runtergeladen und auch unsere Datenbank als SQL-Datei lokal gespeichert.

    Aber wie bringen wir das ganze im Notfall wieder sauber auf unseren Server?

    Wir haben keinerlei Erfahrung mit Datenbanken...


    Grüße
    Markus

  • Hi Markus! Wenn ich das richtig verstanden hab, ist eine Backup-Funktion aus dem Portal heraus auf jeden Fall schon geplant. Ich hab vor einiger Zeit zu Testzwecken mal eine Kopie von unserer Installation auf einer Subdomain gemacht und dazu eine Kopie der DB verwendet, was problemlos funktioniert hat. Mit einer Sicherung der kompletten Installation incl. der DB bist Du IMHO nach schon auf der sicheren Seite :) LG, Sebastian

    Wo kämen wir da hin, wenn alle sagten "Wo kämen wir da hin" und keiner ginge, um zu sehen, wohin wir kämen, wenn wir gingen?

    • Offizieller Beitrag

    Hello,

    das ist richtig. Das Script fürs Backup ist auch schon im System.

    Es gibt unter "cli/MakeBackup.php" ein BackupScript. (OS Version)

    Das erstellt ein Backup der Datenbank und des Webspace und legt es im Ordner "data/backups" ab.

    Nur muss dies bis jetzt händisch angeschubst werden.

    Ich fände es super, wenn wir das in den täglichen Cronjob integrieren. Wie der restore/wiederherstellen aussehen soll bin ich mir noch nicht sicher.

    Wünsche?

    g

  • Servus Chris,


    Wäre gut, wenn ein Restore auch im Adminbereich möglich wäre - keine Ahnung, ob sich das machen lässt weil das System sich ja selbst im laufenden Betrieb überschreiben müsste. Ich kenn die Backupfunktion noch nicht, fände es aber , das Backup nach selbst festgelegten Intervall und auch spontan anstoßen zu können. Wichtig wäre dann noch, dass sich die einzelnen Wiederherstellungspunkte im Adminbereich einsehen und auch löschen lassen, falls das noch nicht so implementiert ist :)

    Wo kämen wir da hin, wenn alle sagten "Wo kämen wir da hin" und keiner ginge, um zu sehen, wohin wir kämen, wenn wir gingen?

    • Offizieller Beitrag

    ok.

    ich hab darüber schon mal mit Christian geschrieben und erlaube ihn hier zu zitieren:

    Zitat

    Eine Integration in die Crons ist eine gute Idee! Das mache ich.

    Dann erhält man auch eine Übersicht in der Administration. (Zugriff auf die Backups über das Adminpanel wird es wohl nicht geben aus Sicherheitsgründen.) Aber das geht dann leicht über SSH / FTP aus dem data Verzeichnis.

    Also das man die Backups sieht find ich gut. Löschen hätte ich aus Erfahrung automatisiert. Unsere Live System aktuell hat eine db-größe von ca 110mb. Bei täglichen Backups wird da schnell der Webspace vollgemüllt.


    Bei vergangenen Projekten habe ich es folgendermaßen gemacht und bin damit auch bei nicht technikaffinen Kunden sehr gut gefahren:


    1. automatisches wöchentliches Backup // es werden max 5 Backups gelistet. folglich wird das ältestet gelöscht, wenn ein neues backups angelegt wird


    2. automatisches tägliches Backup // wird jeden tag überschrieben


    3. den restore komplett vom system unabhängig // wie der Installer. ein externen script das sich nur darum kümmert und dementsprechend alles kann und keine Abhängigkeiten hat


    so werden max 6 backups.zip herumliegen (ca 600 bis 1000mb) und wenn ein backups eingespielt wird, ist eine kleine aber überwindbare Hürde vorhanden (nicht aus dem System heraus) sodass nicht "durch Zufall" ein Backup eingespielt wird und die aktuellen Daten weg sind.


    Würde zu dem Restor dann ein nettes Tutorial machen, sodass es auch im Notfall und unter Stress noch verständlich und ausführbar ist.

    lg

  • Hallo,

    habe inzwischen einen Cronjob für das Backup beim Hoster laufen, kann die MakeBackup.php auch per Browser aufrufen.

    Allerdings sind die Servereinstellungen so, dass Scripte max. 90 Sekunden laufen dürfen (mehr ist auch nicht einstellbar).

    Woher weiß ich, ob die Backups korrekt/vollständig sind.

    Im Ordner sieht es aktuell so aus:

    pasted-from-clipboard.png

    Danke und VG Jens

  • Hallo Christian,

    ist doch schon mal eine Information. SSH-Zugangsdaten und eine Anleitung finden sich bei Alfahosting. Muss ich mir mal in Ruhe anschauen.

    Es laufen ja sowieso 2x pro Woche Sicherungen durch Alfahosting (wenn auch incl. Homepage).

    Funktionieren dann die zukünftigen automatischen Sicherungen aus der Instanz auch nicht? Müsste man dann irgendwie mit dem Hoster noch mal sprechen zwecks Zeitlimit etc.?

    VG Jens

    Schaust du bitte auch noch mal bei den Beiträgen zu den Updates rein, da ist dir meine Antwort (da weiter oben) wohl entgangen.

  • Hallo,

    ich hab jetzt auch mal probiert, das Backup auf diesem Weg zu machen. Aber da bin ich kläglich gescheitert. Ich kann die "MakeBackup.php" nicht aufrufen... von der Einrichtung eines Cronjobs mal ganz zu schweigen.

    Hast Du noch einen Tip @Hp@RSNES

    Vielen Dank,
    Viele Grüße
    Pierre

  • Hallo Pierre,

    Cronjob habe ich auch nicht hinbekommen, da das max. Zeitlimit für die Ausführung bei unserem Hoster nicht ausreicht.

    Habe mich dann mittels Putty über SSH verbunden und dort die MakeBackup.php aufgerufen. So wurde das Backup vollständig angelegt.

    Musste aber auch probieren und googeln, da keine Erfahrungen in diesem Bereich.

    Hoffe, dass da bald was aus dem Adminbereich geht und das Zeitlimit keine Rolle spielt.

    VG Jens

  • Hallo,


    das Thema "Backup" hat mich heute wieder böse eingeholt... es wäre echt super, wenn es da bald eine Lösung gebe, die auch User wie ich leicht einsetzen könnten...


    Vielen Dank,
    viele Grüße
    Pierre

  • Hab jetzt mal aus dem Admin-Bereich die Funktion Backup gestartet.



    Ergebnis: DB-Backup lief durch, hat eine zip mit 38MB erzeugt. Sieht das realistisch aus?


    Backup von "Eigene Dateien und DB" -> Fehlermeldung "Ajax"


    BAckup von "System und DB" -> Fehlermeldung "Time limit exceed 30sec", allerdings zip vom System erzeugt mit 132MB


    Backup von "Eigene Dateien, System und DB" -> Fehlermeldung "Ajax"



    vg Dieter

    • Offizieller Beitrag

    Hallo zusammen,

    das Backups System ist leider etwas zu schnell in das Live-System gerutscht bzw auf die meisten Fehler können wir nur bedingt beheben.

    In der Regel sind die Systemdaten (schule-intern) recht klein, die "Eigenen-Daten" unterschiedlich groß und die Datenbank (je nachdem wie das Nachrichtensystem genutzt wird) sehr groß (bis 100GB). Eure Server auf dem das System läuft lässt meist das Backup über die Website nur bis zu einer bestimmten Größe durchlaufen und bricht ggf ab.


    Ich werde das für die 1.2.1 mit einem großen Hinweis versehen:

    Für ein sicheres und zuverlässiges Backup bitte die Serverfunktionen (SSH/Putty) nutzen!


    Danke.

    g chris

  • Hallo Pierre,

    das sind die Weiterleitungen aus SchuleIntern an die privaten Emailadresssen; ich leere die Tabelle einfach regelmäßig.

    Bei uns war noch problematischer die massages_massages, in der alle Nachrichten innerhalb des Systems hängenbleiben, auch Nachrichten die in den Papierkörben der User eigentlich gelöscht sind. Ich lasse dann suchen und lösche sie per Hand. Weiß nicht, ob da schon ein Update geholfen hat.

    VG Jens

  • Vielen Dank für die Antwort Jens,
    ich versuche gerade zu verstehen, warum der Ordner so groß ist bei uns.... ob das die Elternrundbriefe sind, die da mit drin hängen? Oder was auch immer der Grund ist...

    Irgendwie wäre es echt gut, wenn es da auch noch eine "Admin-Lösch-Option" oder ein automatisches Löschen zum neuen Schuljahr gäbe... wir nutzen das jetzt seit 2,5 Jahren, da hat sich schon einiges gesammelt....

    • Offizieller Beitrag

    Hello, ich bin da auch ganz bei Jens. Soweit ich das durchdrungen habe, werden in der mail_send die Nachrichten zwischengelagert die danach noch per E-Mail rausgehen sollen. Warum die nach dem Versenden nicht gelöscht werden verstehe ich auch nicht ganz (=

    Die message_message ist bei uns auch mit Abstand der größte Ordner. Daher mache ich gerne Backups erst ohne "message_message" und zieh mir die eine Tabelle danach separat.

    g chris

  • also bei mir ist der mail_send mit 467 MB deutlich größer als der message_message mit 130 MB
    ...wenn ich das richtig verstehe, liegen die eigentlichen, großen Dateien im Verzeichnis "uploads" als *.dat - Datei, oder?
    Kann ich da einfach löschen???