Backups leicht gemacht

Kurz notiert: Tägliche lokale Backups einer externen MySQL-Datenbank lassen sich ratzfatz mit mysqldump erledigen.

Da die Software hinter meiner Internetseite massiv auf die Datenbank setzt (selbst Templates und CSS-Dateien werden allein in der Datenbank verwaltet), habe ich auf meinem PC sogleich folgendes kleines Skript in /etc/cron.daily/ abgelegt:

#!/bin/bash

mysqldump -hdatenbankbei.meinemhoster.de -uBenutzername -pPasswort --all-databases > /home/andre/andwil.de/dbdumps/`date +"%Y-%m-%d"`.sql

So wird nun jeden Tag ein genaues Abbild („Dump“) der MySQL-Datenbanken auf meiner Festplatte abgelegt – heute also unter dem Namen 2010-02-04.sql. Was die Parameter im Detail bedeuten, kann man in den Manpages (man mysqldump) oder auf oben genannter Internetseite nachlesen.

Kein Tippfehler: hinter -h (Host), -u (Username) und -p (Password) folgt kein Leerzeichen!

Wenn man sich die Datenbank vermurkst hat, kann man einen MySQL-Dump auf verschiedene Weise in die Datenbank einspielen: Mausschubser verwenden z.B. phpMyAdmin, Freunde der Konsole kommen mit mysql [Login-Parameter] < meindump.sql zum Ziel.

Dank für den Tipp geht hierbei an Daniel!

Wie man seine Datenbanken sichert, wissen wir jetzt also alle. ;-)

Wie man aber seine lokalen Festplattendaten schnell und bequem sichern kann, habe ich im längeren Artikel „Datensicherung im Alltag“ (abgelegt in der Linux-Schublade) beschrieben. Backup-Muffel sollten vielleicht mal einen Blick riskieren.

Nachtrag: Wenn dein Webhoster nicht zulässt, dass du von zuhause aus mit mysqldump auf seinen Datenbank-Server zugreift, ist dieser Artikel für dich interessant.

Das ist zum Beispiel dann der Fall, wenn du die Fehlermeldung

mysqldump: Got error: 2003: Can’t connect to MySQL server on ‘datenbank.meinhoster.de’ (110) when trying to connect

erhälst.

Andwils Avatar

~andwil

Geek aus Kiel. tobt sich hier vor allem über den Open-Source-Kosmos im Allgemeinen (und Linux im Speziellen) sowie Heavy Metal aus.