backup.sh - резервное копирование файлов и базы mySQL

Скрипт для заметки: Настраиваю backup на сервере, попытка 1 (комментировать можно там)

Простой скрипт для бэкапа файлов и базы mySQL. Резервная копия базы данных отправляется на почту, а файлы приходится скачивать вручную через ftp. Вариант для второй попытки: сделать инкрементальное копирование в один файл latest.tar.gz и забирать его с моего компьютера через ftp, тоже автоматически, по cron’у.

# *** Backup script by Gluek, 18.08.2007 ***
# [ [email protected] |  http://gluek.info ]
 
# 0. VARIABLES
 
EMAIL="[email protected]"
DATE=`date +%Y%m%d-%H%M%S-%Z`
 
# 1. BACKUP PROCEDURE FOR FILES
 
tar zcf backup/gluek.info-$DATE.tar.gz gluek.info/
 
# 2. BACKUP PRODECURE FOR MYSQL DATABASE
 
HOSTNAME=имя_сервера_mysql
DBNAME=имя_базы
DBPASS=мой_пароль
DBUSER=имя_пользователя
 
mysqldump --opt -h $HOSTNAME -u $DBUSER -p$DBPASS $DBNAME > backup.sql
gzip backup.sql
mv backup.sql.gz $HOSTNAME-$DBNAME-$DATE.sql.gz
echo "Backup of $DBNAME @ $HOSTNAME from $DATE is attached" | mutt -a $HOSTNAME-$DBNAME-$DATE.sql.gz $EMAIL -s "MySQL Backup of $DBNAME @ $HOSTNAME"
mv $HOSTNAME-$DBNAME-$DATE.sql.gz backup/
 
# DONE!