MySQL Datenbank Bakup
AufgabeEs ist unter UNIX oder Cygwin von der MySQL Datenbank als Backup regelmässig ein SQL-Dump zu ziehen. Die Sicherung sei erst nach einer gewissen Anzahl Folgesicherungen zu überschreiben. Lösungsvorschlag
Das untenstehende csh-Script ist von cron regelmässig aufgerufen. Das Passwort für den Datenbankzugang schreibt man besser nicht als Option von mysqldump ins Script, sondern hinterlegt es in die Konfigurationsdatei von MySQL:
#!/bin/csh -f
#
#
# Set passwd in $HOME/.my.cnf:
# ...
# [client]
# password = your_password
# ...
#
set dumpdir = ( ' /dbdump' )
set rotnum = ( '5' ) # file rotation level
set host = ( `uname -n ` )
#
set dumpfile = ( "$dumpdir/mysqldump_${host}.sql.bz2" )
set opts = ' --opt --all-databases --lock-tables '
#
while ( $rotnum > 0 )
@ mvnum = $rotnum - 1
if ( -e ${dumpfile}-$mvnum ) then
mv ${dumpfile}-$mvnum ${dumpfile}-$rotnum
endif
@ rotnum = $rotnum - 1
end
mysqldump $opts | bzip2 -9 -c > ${dumpfile}-0
#
# EOF
Der gesicherte Datensatz enthält dekomprimiert SQL-Anweisungen die im Falle eines Falles
von mysql mit source direkt wieder eingelesen werden können.To top
| Nach Oben |