Skrypt zrzuca zawartość bazy do pliku oraz kompresuje go. Ostatnia operacja, to usuwanie z folderu z kopiami zapasowymi plików utworzonych przed 7. dniami.
Skrypt przydaje się podczas tworzenia okresowych kopii zapasowych bazy danych.
#!/bin/bash
HOST=localhost
USER=root
PASSWORD=mypassword
DB=mydatabase
DIR=/root/backups/mysql
FILENAME="${DIR}/${DB}_`date +'%Y_%m_%d_%H_%M'`.sql"
mysqldump \
--allow-keywords \
--compress \
--create-options \
--disable-keys \
--extended-insert \
--host=$HOST \
--events \
--no-autocommit \
--password=$PASSWORD \
--quote-names \
--routines \
--skip-add-locks \
--skip-comments \
--skip-compact \
--triggers \
--user=$USER $DB > $FILENAME
gzip $FILENAME
find $DIR -mtime +7 -exec rm {} \;