Automatisches Backup der MySQL-Datenbank

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

Automatisches Backup der MySQL-Datenbank

Postby Micha123 » 04. June 2012 07:25

HALLO erstmal...
ich bin Michael und neu hier! :D

...und hätte direkt mal eine Frage.

Wie kann man es realisieren das (nur) die SQL-Datenbank automatisch z.B. nachts gesichert wird?
...und das Backup auf einem dauerhaft angeschlossenen USB-Stick gespeichert wird.

Zur Info, der PC auf dem XAMPP läuft ist ohne Netzwerkanschluss und wird nur lokal bedient.
...soll heißen nachts wird er garantiert nicht genutzt ein Beenden und Neustarten von SQL
müsste doch dann nicht notwendig sein, oder? Hab schon von einigen Problemen dabei gelesen.

Des weiteren hab ich schon was gelesen ntbackup und batch-dateien.
Davon hab ich aber leider keinen Plan und würde mich daher über Unterstützung freuen.

Gruß Micha
Micha123
 
Posts: 2
Joined: 04. June 2012 06:53
Operating System: Windows 7 64bit

Re: Automatisches Backup der MySQL-Datenbank

Postby Altrea » 05. June 2012 16:37

Hallo Michael,

Micha123 wrote:Wie kann man es realisieren das (nur) die SQL-Datenbank automatisch z.B. nachts gesichert wird?

Am besten via Batch Script(e). MySQL kann man sehr gut über die Kommandozeile ansprechen. Zuständig für Datenbank-Dumps ist das Kommando mysqldump

Ein kleines Beispiel.
Erstell eine neue Datei C:\batch\dailydump.bat mit folgendem Inhalt
Code: Select all
C:\xampp\mysql\bin\mysqldump.exe --user="root" --password="" --databases "cdcol" "test" --result-file="U:\databases.sql"

Selbstverständlich müssen alle Angaben mit deinem System abgestimmt werden, also:
- Der Pfad zu deiner mysqldump.exe (im Beispiel C:\xampp\mysql\bin\mysqldump.exe)
- Ein Benutzer mit den Rechten auf die zu dumpenden Datenbanken zugreifen zu können (im Beispiel root)
- Das dazugehörige Passwort (im Beispiel ist das Passwort leer)
- Die Datenbanknamen die gesichert werden sollen (im Beispiel cdcol und test)
- und der Pfad mit Dateiname, den der dump haben soll (im Beispiel U:\databases.sql)

Diese Batch-Datei kannst du dann einfach per Windows Task ausführen lassen.

Beachten solltest du, dass bei dem Beispiel alle Datenbanken in derselben Datei gedumpt werden.
In der Regel ist es Sinnvoller jede Datenbank einzeln zu dumpen um sie auch einfacher einzeln wiederherstellen zu können.
Dies ist dann aber ein reines Batch-Problem und hat mit dem dumpen nichts mehr zu tun, daher gehe ich darauf jetzt nicht ein.
Ein weiteres Batch-Thema wäre, den Dateinamen variabel zu gestalten (zum Beispiel Datum-Zeitstempel) um mehrere Dumps anlegen zu können.

Micha123 wrote:...und das Backup auf einem dauerhaft angeschlossenen USB-Stick gespeichert wird.

"Dauerhaft angeschlossen" ist immer so eine Sache. Ich halte die ganze Konstruktion für zu fehleranfällig.
Gerade USB-Geräte können manchmal den Kontakt verlieren, wenn sie geringfügig bewegt werden.

Micha123 wrote:soll heißen nachts wird er garantiert nicht genutzt ein Beenden und Neustarten von SQL
müsste doch dann nicht notwendig sein, oder? Hab schon von einigen Problemen dabei gelesen.

Probleme kann es immer geben, wenn man Statusveränderungen an Prozessen oder Diensten vornimmt.
Solltest du außerdem InnoDB Datenbanken mit Transaktionen nutzen wirst du kaum eine Alternative haben als die Datenbankprozesse vorher sauber zu beenden, denn diese Form von Datenbanken kann man nicht so ohne weiteres im laufenden Betrieb sichern (denn die einzigen Lösungen die ich kenne, InnoDB Datenbanken "problemlos" im Laufenden Betrieb sichern zu können kosten eine Menge Geld.)

Micha123 wrote:Des weiteren hab ich schon was gelesen ntbackup und batch-dateien.
Davon hab ich aber leider keinen Plan und würde mich daher über Unterstützung freuen.


Nun, zumindest mit Batch-Dateien und Batch-Dateien in Verbindung mit Windows Tasks wirst du dich beschäftigen müssen. Du musst verstehen was du da einbaust und wie man das verwendet, ansonsten kannst du nichtmal eine vernünftige Fehleranalyse durchführen.

mit freundlichen Grüßen,
Altrea
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11926
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: Automatisches Backup der MySQL-Datenbank

Postby Micha123 » 10. June 2012 22:32

Hallo und vielen Dank für deine Antwort.
Damit komme ich schonmal weiter.

Aber was bedeutet InnoDB?

Und wie können man ein Beenden und Neustarten realisieren bzw. angehen.


Gruß Micha
Micha123
 
Posts: 2
Joined: 04. June 2012 06:53
Operating System: Windows 7 64bit

Re: Automatisches Backup der MySQL-Datenbank

Postby Altrea » 10. June 2012 22:40

Micha123 wrote:Aber was bedeutet InnoDB?

http://de.wikipedia.org/wiki/InnoDB

Micha123 wrote:Und wie können man ein Beenden und Neustarten realisieren bzw. angehen.

\xampp\mysql_stop.bat & \xampp\mysql_start.bat ?

mit freundlichen Grüßen,
Altrea
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11926
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64


Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 21 guests