Die Verwendung von mysqldump zur Datensicherung der MySQL-Datenbank ist gängig. Datensicherungen laufen meist automatisiert in From von Cronjobs jede Nacht durch. Der Standardaufruf von mysqldump erlaubt es auf den ersten Blick nicht, die kompletten Zugangsdaten wie Benutzername und Passwort mitzugeben. Hingegen erfolgt die Eingabe des Passworts nach dem Ausführem des Befehls separat. Zu Recht, denn somit wird das Password nicht in den Logs und nicht in der Bash History (.bash_history) gespeichert. Der normale mysqldump Aufruf kann in diesem Blogeintrag nachgeschlagen werden, widmen wir uns nun aber des Aufrufs inklusive Passwort.

Bei Shell-Scripten, die per Cronjob automatisiert ausgeführt werden sollen, wollen wir nun nicht vorm Server sitzen und jede Nacht um 3 das Datenbank-Passwort eingeben, dann könnten wir uns den Cronjob gleich sparen. Es bleibt uns also nichts anderes übrig, als Passwort in dem Script mit dem mysqldump-Befehl zu speichern. Hierbei gibt es 2 Varianten, wobei mir diese hier ziemlich nerdy und wie ein Easter Egg erscheint. Das Leerzeichen zwischen Paramter-Option und Wert verschwindet einfach bei Username und Password.

mysqldump -uUSERNAME -pPASSWORD DATABASENAME > FILENAME

Eine wesentlich gewöhnlicheres Erscheinungsbild liefert die zweite Variante des mysqldump-Aufrufs mit Passwort:

mysqldump -u USERNAME –password=PASSWORD DATABASENAME > FILENAME

Für welche Variante man sich entscheidet ist eigentlich egal, beide liefern das gleiche Resultat. Ich nehme jedoch Nummer 2.

Mittwoch, 25. März 2009 [Linux] RSS 2.0 / Trackback senden

Noch keine Kommentare.

Einen Kommentar hinterlassen

XHTML allowed tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>