Wie kann ich eine MySQL Datenbank sichern?

      Es gibt zur Datensicherung der MySQL Datenbank prinzipiell zwei unterschiedliche Wege

       

      1. Sicherung der eigentlichen Dateien, die sogenannte Hotcopy
        Vorteil: Schnelle, sichere Datensicherung
        Nachteil: Die Datenbank muss (sollte) während dessen abgeschaltet werden.
      2. Sicherung durch Herstellen eines sogenannten dumps. Dies stellt sicherlich den klassischen Weg dar, eine Datensicherung vorzunehmen.
        Vorteil: Sehr große Portabilität
        Nachteil: In der Ausführung relativ langsam

      Hotcopy

      Zum Anfertigen einer Hotcopy geht man einfach in das entsprechende Verzeichnis wo die eigentlichen Daten der MySQL Datenbank liegen und kopiert sie auf einen anderen Datenträger.
      Unter Linux befinden sich die Daten im Verzeichnis: /var/lib/mysql. Für jede Datenbank gibt es hier ein eigenes Verzichnis. Der Zugriff ist nur als root (Administrator) möglich.
      mysql_dir
      In diesem Beispiel gibt es also mehrere Datenbanken namens xa5258_db1, db3, usw.

      mysql_dir1
      In einem Datenbanken Verzeichnis gibt es dann für jede angelegte Tabelle eine .frm und eine .MYD, sowie eine .MYI Datei.
      In diesem Beispiel ist es ein Ausschnitt aus der Joomla Datenbank

      • .frm | Tabellenschema (Tabellentyp, Indizes)
      • .myd | MyISAM, Tabellendaten
      • .myi | MyISAM, Tabellen-Indizes

      Dump


      Die Sicherung als dump Datei geht über einen Konsolenbefehl.

      Die zu verwendende Syntax sieht so aus:
      mysqldump [Optionen] Datenbankname [tables] > backup.sql

      Um sich alle Optionen ansehen zu können, also was bedeutet was, gibt man den Befehl mysqldump --help ein. Somit bekommt man eine ganze Liste mit Optionen angezeigt, sowie Hinweise zur Syntax.

      Als Beispiel:
      mysqldump -u root --password=[Passwort der Datenbank] --opt --all-databases > /mnt/backup/datenbank.sql

      • -u oder --user | Benutzername
      • -p oder --password | Passwort des Benutzers
      • --opt bewirkt dass,
        • während der Datensicherung alle Tabellen von anderen user nicht mehr lesbar sind (read lock)
        • Die entstehende Sicherungsdatei wird möglichst klein gehalten, indem ein INSERT-Kommando für alle Datensätze der Tabelle eingesetzt wird.
        • Es wird ein DROP-TABLE Kommando eingefügt, um bei der Wiederherstellung der Sicherung vorhandene Tabllen überdschreiben zu können.
        • Alle Merkmale der Datenbank werden mit gespeichert.
      • --all | Benutzt / Erstellt alle MySQL spezifischen Optionen der Datenbank im CREATE-TABLE Kommando an.
      • -databases | Speichert mehrere Datenbanken in einer dump Datei
      • > /mnt/backup/datenbank.sql | Dateipfad wo die entstehende sql Datei gespeichert werden soll

      Um dieses Befehl nicht ständig sich ausdenken und in die Konsole eingeben zu müssen, kann man diese dump Erstellung auch als Batch Datei dauerhaft speichern. Zum Beispiel als backup.sh

      #!/bin/bash
      mysqldump -u root --password=[Passwort des Datenbankbenutzers] --opt --all-databases > /mnt/backup/datenbank.sql

       

      Zur Wiederherstellung setzt man dann folgenden Befehl ein:
      mysql -u root -p [Passwort des Datenbankbenutzers] < /mnt/backup/datenbank.sql

       

       

       

      Artikeldetails

      • Symbol für ZugriffsanzeigeZugriffe: 5287 Klicks
      • Symbol für DurchschnittswerteDurchschnittliche Zugriffe: 176.2 Klicks / Monat
      • TCE_PLG_LASTVISIT_IMGLetzter Besuch war vor 3 Stunden und 6 Minuten
      • Symbol für WörteranzahlAnzahl der Wörter: 573
      • Symbol für ZeichenanzahlAnzahl der Zeichen: 3859
      • Symbol für ErstellungsanzeigeErstellt vor 3 Jahren und 6 Monaten am Samstag, 14. November 2009 von Torsten Freyda
      • Symbol für ÄnderungsanzeigeGeändert vor 3 Jahren und 6 Monaten am Samstag, 14. November 2009 von


      Tecox component by www.teglo.info

      Zitate der Vergangenheit

      " Es gibt keinen Grund, warum irgend jemand einen Computer in seinem Haus wollen würde. "
      Ken Olson (Präsident, Vorsitzender und Gründer von Digital Equipment co.), 1977
      Copyright © 2013 Teglo. Alle Rechte vorbehalten.
      | Letzte Aktualisierung:Montag 08. April 2013, 17:48 Uhr