1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Deutsch
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  1. Informatik Forum
  2. Webmaster & Internet
  3. Webmaster Allgemein

Datenbank mit Cronjob auf dem Webspace sichern

  • Dragosius
  • 20. April 2023 um 17:59
  • Unerledigt
  • 1
  • 2
  • flyingtable07
    18
    flyingtable07
    Mitglied
    Reaktionen
    59
    Punkte
    3.564
    Trophäen
    1
    Beiträge
    678
    • 20. April 2023 um 20:50
    • #21
    Zitat von AquaDev

    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.

  • AquaDev
    6
    AquaDev
    Mitglied
    Reaktionen
    7
    Punkte
    337
    Trophäen
    1
    Beiträge
    63
    • 20. April 2023 um 20:50
    • #22

    Warten wir mal ab was er jetzt genau dazu sagt.

  • flyingtable07
    18
    flyingtable07
    Mitglied
    Reaktionen
    59
    Punkte
    3.564
    Trophäen
    1
    Beiträge
    678
    • 20. April 2023 um 20:51
    • #23
    Zitat von Syntafin

    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?

  • Dragosius
    6
    Dragosius
    Mitglied
    Reaktionen
    28
    Punkte
    288
    Beiträge
    46
    • 20. April 2023 um 20:56
    • #24
    Zitat von flyingtable07

    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. :smiling_face_with_halo:

    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.

    Zitat von AquaDev

    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.

  • flyingtable07
    18
    flyingtable07
    Mitglied
    Reaktionen
    59
    Punkte
    3.564
    Trophäen
    1
    Beiträge
    678
    • 20. April 2023 um 21:21
    • #25
    Zitat von Dragosius

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

    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.


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

    Alles anzeigen

    ui das wird schon schwieriger.

    Bash
    #!/bin/bash
    
    # MySQL Credentials
    MYSQL_USER="username"
    MYSQL_PASSWORD="password"
    MYSQL_DATABASE="database_name"
    
    # Backup Directory
    BACKUP_DIR="/var/www/html/backups"
    
    # Keep 2 backups
    BACKUPS_TO_KEEP=2
    
    # Generate filename with current date and time
    FILENAME="${MYSQL_DATABASE}_$(date +%Y_%m_%d_%H_%M).sql.gz"
    
    # Create backup directory if it doesn't exist
    if [ ! -d "$BACKUP_DIR" ]
    then
      mkdir -p "$BACKUP_DIR"
    fi
    
    # Dump the database and compress the output
    mysqldump --user=$MYSQL_USER --password=$MYSQL_PASSWORD $MYSQL_DATABASE | gzip > $BACKUP_DIR/$FILENAME
    
    # Delete old backups
    cd $BACKUP_DIR
    ls -1tr | head -n -$BACKUPS_TO_KEEP | xargs -d '\n' rm -f --
    Alles anzeigen

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

  • Dragosius
    6
    Dragosius
    Mitglied
    Reaktionen
    28
    Punkte
    288
    Beiträge
    46
    • 20. April 2023 um 22:29
    • #26

    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
  • Syntafin
    27
    Syntafin
    LISTstack Dev
    Reaktionen
    498
    Punkte
    7.773
    Trophäen
    2
    Beiträge
    1.412
    • 20. April 2023 um 22:41
    • #27
    Zitat von Dragosius

    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...

  • Parzival
    3
    Parzival
    Mitglied
    Reaktionen
    4
    Punkte
    74
    Beiträge
    12
    • 20. April 2023 um 23:24
    • #28

    Syntafin meinst folgendes?

    Exportieren und Importieren von Datenbankabbildern
    Ein Datenbankabbild ist eine Datenbank, die die Struktur und den Inhalt einer Datei enthält. Es kann zu Backupzwecken...
    docs.plesk.com
  • Syntafin
    27
    Syntafin
    LISTstack Dev
    Reaktionen
    498
    Punkte
    7.773
    Trophäen
    2
    Beiträge
    1.412
    • 21. April 2023 um 00:41
    • #29
    Zitat von Parzival

    Syntafin meinst folgendes?

    https://docs.plesk.com/de-DE/12.5/cus…bbildern.69538/

    Sieht danach aus, nutze ja selbst seit Jahren kein Plesk mehr (oder sonstige Hosting Panels)

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

  • flyingtable07
    18
    flyingtable07
    Mitglied
    Reaktionen
    59
    Punkte
    3.564
    Trophäen
    1
    Beiträge
    678
    • 21. April 2023 um 06:51
    • #30
    Zitat von Dragosius

    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

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

  • Dragosius
    6
    Dragosius
    Mitglied
    Reaktionen
    28
    Punkte
    288
    Beiträge
    46
    • 21. April 2023 um 08:25
    • #31
    Zitat von flyingtable07

    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)

  • flyingtable07
    18
    flyingtable07
    Mitglied
    Reaktionen
    59
    Punkte
    3.564
    Trophäen
    1
    Beiträge
    678
    • 21. April 2023 um 08:52
    • #32
    Zitat von Dragosius

    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)

    Alles anzeigen

    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

  • AquaDev
    6
    AquaDev
    Mitglied
    Reaktionen
    7
    Punkte
    337
    Trophäen
    1
    Beiträge
    63
    • 21. April 2023 um 08:57
    • #33

    Muss es am Ende denn wirklich ein Skript sein? Oder wolltest du das halt einfach so, weil du es vorhin schon so gemacht hast?

  • Dragosius
    6
    Dragosius
    Mitglied
    Reaktionen
    28
    Punkte
    288
    Beiträge
    46
    • 21. April 2023 um 09:33
    • #34

    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?

  • Syntafin
    27
    Syntafin
    LISTstack Dev
    Reaktionen
    498
    Punkte
    7.773
    Trophäen
    2
    Beiträge
    1.412
    • 21. April 2023 um 10:33
    • #35
    Zitat von Dragosius

    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?

    Alles anzeigen
    Beitrag

    RE: Datenbank mit Cronjob auf dem Webspace sichern

    Syntafin meinst folgendes?

    https://docs.plesk.com/de-DE/12.5/cus…bbildern.69538/
    Parzival
    20. April 2023 um 23:24


    :thinking_face:

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

  • Dragosius
    6
    Dragosius
    Mitglied
    Reaktionen
    28
    Punkte
    288
    Beiträge
    46
    • 21. April 2023 um 12:00
    • #36
    Zitat von Syntafin
    Beitrag

    RE: Datenbank mit Cronjob auf dem Webspace sichern

    Syntafin meinst folgendes?

    https://docs.plesk.com/de-DE/12.5/cus…bbildern.69538/
    Parzival
    20. April 2023 um 23:24


    :thinking_face:

    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.

  • flyingtable07
    18
    flyingtable07
    Mitglied
    Reaktionen
    59
    Punkte
    3.564
    Trophäen
    1
    Beiträge
    678
    • 21. April 2023 um 13:29
    • #37

    Das mit den Berechtigungen kann man nicht so pauschal sagen. Bei managed hosting servern ist das bei jedem anbieter andas geregelt, was man selber für scripta ausführen kann und für was man mehr rechte braucht.

  • Dragosius
    6
    Dragosius
    Mitglied
    Reaktionen
    28
    Punkte
    288
    Beiträge
    46
    • 22. April 2023 um 21:26
    • #38

    Ich habe es nun mittels Cronjob hinbekommen, jedoch jede ich die Datenbank-Backups nun in ein Verzeichnis ab, welches nicht über die Webseite aufrufbar ist. (Wenn man unwahrscheinlicherweise die genaue Adresse herausgefunden hätte.)

  • AreSee
    1
    AreSee
    Mitglied
    Punkte
    5
    Beiträge
    1
    • 22. April 2023 um 21:48
    • #39

    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.

    • 1
    • 2

Jetzt mitmachen!

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

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung

  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  • Deutsch
  • English
Zitat speichern