Datenbank mit Cronjob auf dem Webspace sichern

  • Jetzt bin ich verwirrt..

    Wo ist die Datenbank? Wo willst du das Backup hinspeichern?

    Braucht es nun wirklich FTP?

    Also wenn die DB auf dem gleichen Server kopiert wird, dann ist das kein Backup.. dann ist das nur zusätzlich befüllter Speicherplatz.

    naja, ganz verstehe ich den sinn auch nicht, könnte mir nur vorstellen, dass man so die möglichkeit hat die db auf einen früheren status zurückzusetzen fals nötig.

  • Direkt auf dem Webspace, frei für jeden zugänglich fände ich aber nicht so gut wenn man Datenschutz bedenkt.

    stimmt, die datei sollte schon nur für admins zugänglich sein.
    Wie wärs wenn du alle backups in einen bestimmten ordner auf dem webspace speichern lässt und diesen dann mit .htaccess und .htpasswd durch ein password schüzt?

  • Klar,
    Du kanst einfach im bash script den upload Teil wegmachen un statdessen den dateipfad anpasen.
    ungefär so:

    Code
    MYSQL_USER="username"
    MYSQL_PASSWORD="password"
    MYSQL_DATABASE="database_name"
    
    FILENAME="/var/www/html/backup.sql"
    
    
    mysqldump --user=$MYSQL_USER --password=$MYSQL_PASSWORD $MYSQL_DATABASE > $FILENAME

    So würde die Datei immer direkt auf dem webspace gespeichert werden.

    Ich hätte hier noch ein paar Anmerkungen. :saint:

    Kann man den Dateiname etwas dynamischer machen? [Datenbankname]_[Jahr]_[Monat]_[Tag]_[Stunde]_[Minute].sql

    Ich würde gerne immer 2 Backups behalten. Sobald das 3. Backup erstellt wurde, wird das älteste Backup wieder gelöscht.

    Dass hier jemand den genauen Namen errät, halte ich für eher unrealistisch.

    Bitte gerne als sql.gz, damit es nicht so groß wird.

    Jetzt bin ich verwirrt..

    Wo ist die Datenbank? Wo willst du das Backup hinspeichern?

    Braucht es nun wirklich FTP?

    Also wenn die DB auf dem gleichen Server kopiert wird, dann ist das kein Backup.. dann ist das nur zusätzlich befüllter Speicherplatz.

    Wenn ich unregelmäßig per FTP alles runterlade, ist ein Datenbank-Backup dabei, was sonst nicht der Fall wäre.

  • ui das wird schon schwieriger.

    Probier mal aus, ob dieser code funktioniert. du must nur noch die datenbank daten eingeben und den gewünschten pfad des ordners.

  • Der Webspace läuft bei mir in Plesk, aber irgendwie scheint er etwas eingeschränkt zu sein.

    Ich erhalte hier unter anderem folgenden Fehler:

    Code
    date: command not found
    mysqldump: command not found

    Meine Plesk Zeiten sind lange vorbei, aber bietet Plesk nicht eine Option an das zu machen? Hab das noch so grob in Erinnerung.

    A red dragon falls from the heavens... Ah, that memory has been lost. A shame. It was a favorite of mine...

  • hmm
    Versuch mal die Sachen zu installieren: apt-get install date mysqldump

    Ich gebe zu, ich bin in dem Bereich nicht so fit, weshalb ich auch einen Managed-Server habe.

    Brauche ich dazu nicht root-Rechte, um sowas auszuführen?

    Ich vermute gerade, dass dies auch an den Berechtigungen des Kundenaccounts liegen kann.

    Nur kann ich das denn irgendwo anpassen?

    Kann es eventuell diese Option sein? (Die ist aktuell deaktiviert)

  • hmm, wenn es ein Managed server ist, dann sollte es im Normalfall auch eine andere bssere möglichkeit geben solch backups automatisch durchführen zu lassen

  • Ich möchte die Backups lokal speichern können, ohne einen großen Mehraufwand dafür jedes Mal zu haben.

    So hat das bisher super funktioniert.

    Mir ist schon Mal ein halbes Jahr verloren gegangen, weil beim Hoster genau dann als ich es gebraucht hatte, das Backup kaputt war.

    Das hat geprägt.

    Für das Script fehlen ja im Prinzip nur noch die Berechtigungen.

    Das aus dem Screenshot von mir hilft da nicht weiter?


  • :/

    A red dragon falls from the heavens... Ah, that memory has been lost. A shame. It was a favorite of mine...

  • Falls du den Artikel meinst:

    Das dauert mir viel zu lange, wenn ich das jedes mal für jede Datenbank händisch machen muss.

    Meine Frage mit den Berechtigungen ist wohl nicht so einfach zu beantworten.

  • Ich habe eine geändert Version von diesem Script bei mir am laufen:

    MySQL-Datenbanken per Script komplett sichern | marketmix.com
    Betreibt man MySQL auf einen Server der Cron-Jobs erlaubt, kann man MySQL-Datenbanken täglich auf einen Schlag sichern. Dabei spielt es keine Rolle ob
    marketmix.com


    Bezüglich Speicherort:

    Erstell das BackUp wenn möglich ausserhalb des vom Web zugänglichen Bereichs.
    Beispielsweise wäre es Ideal wenn die Website unter /var/www/html/ erreichbar ist, das BackUp jedoch unter /var/www/backups liegt.
    Somit wäre keine Zugriff übers Web möglich.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!