Backup Script?!?

  • Problem

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Backup Script?!?

    [email protected]!

    1) Ich Suche ich ein Script das mir automatisch ein Backup aller MySQL Datenbanken macht und es auf einem Netzlaufwerk ablegt.

    2) Wie kann ich dieses Script dann mit cron zeitlich so Terminieren das er um 22 uhr automatisch dieses Script ausführt?

    Kenne mich leider noch nicht so gut mit cron aus. Sollte aber glaube nicht so schwierieg sein für jemand der sich damit auskennt ;) ?

    Danke im Voraus


    //edit benutze Suse 9.2
  • Bei 1) kann ich dir aus dem Stehgreif nicht helfen.
    Nr. 2) wird hier recht gut erklärt.

    Gruß,
    Commander Keen
    Ich habe das Wort "Europa" immer im Munde derjenigen Politiker
    gefunden, die von anderen Mächten etwas verlangten, was sie im
    eigenen Namen nicht zu fordern wagten. [SIZE="1"](Nov. 1876)[/SIZE]
    [SIZE="1"]Otto von Bismarck[/SIZE]
  • Sofern MySQL herunter gefahren ist (Dämon/Dienst läuft nicht), kannst du einfach die entsprechenden Datenordner komplett sichern. Diese liegen (sofern nicht anders konfiguriert) unterhalb des Programmordners. Das ist auch die einzige Methode, ein konsistentes Backup zu bekommen.

    Sonst benutzt du das Dienstprogramm mysqldump. Damit sind beliebige Exporte von Datenbeständen möglich. Je nach Optionen generiert dir mysqldump eine Datei, die alle notwendigen Befehle enthält, um die Daten wieder mit mysql zu importieren. Diese Form des Backups (als Online-Backup bezeichnet) ist aber nicht Transaktionskonsitent.

    Grobe Bedienung von mysqldump (liegt im bin-Ordner von mysql):

    mysqldump --opt --user=admin --password="geheim" --result-file=/wo/auch/immer/db1-dump.sql db1

    Statt admin und geheim sind natürlich die bei dir gültigen Werte einzusetzen. Ebenso der Pfad beim Result-file und am Ende der Name der gewünschten Datenbank. Das ganze läßt sich auch noch auf einzelne Tabellen begrenzen.

    Du erstellst also ein Shell-Skript, das pro DB eine solche Zeile enthält. Die Datei muss natürlich ausführbar sein (Rechte r und x). Beispiel:

    #!/bin/sh
    mysqldump ......
    mysqldump ......

    Dann führst du den Befehl
    crontab -e
    aus (startet den Editor für Cron-Jobs) und gibst dort folgendes ein:

    0 0 * * * /pfad/zum/skript/mysqlbackup.sh > /pfad/zum/log/mysqlbackup.log

    Das entsprechende Skript wird dann um Mitternacht ausgeführt (die Zahlen vorne in der Reihenfolge Minute, Stunde).

    Grüße
    Michael
  • hier mal ein script das du nur etwas anpassen must
    es sichert dir deine datenbanken und dein www verzeichniss und legt das ganze gepackt ab
    das ganze geht natürlich im laufenden betrieb
    dieses script haben wir hier selbst am laufen
    den rest hat kelzoo ja schon 1a erklärt

    mfg
    Dateien
    Neulinge * Forenregeln * F.A.Q. * Lexikon
    Suchfunktion * IRC * User helfen User

    The price of freedom is eternal vigilance!