Назад | Перейти на главную страницу

Ubuntu automysqlbackup настраивает отдельные базы данных в одной папке с помощью gzip

У меня работает automysqlbackup на Ubuntu 10.04, и он отлично работает.
В настоящее время он выполняет ежедневное резервное копирование для всех баз данных, но я хотел бы настроить конфигурацию следующим образом:

Выполняйте ежедневное резервное копирование всех баз данных в одну папку, но в виде отдельных файлов .sql, а затем сделайте эту папку архивом gzip с меткой времени выполнения резервного копирования.

Мне было интересно, удалось ли это кому-нибудь еще, и если да, то как я могу это настроить?

Спасибо!

Понятно - я только что поместил это в cron. Немного изменено на основе Ответ Джейсона Тана.

#!/bin/sh
# Find out what databases are in mysql and back them up
# Delete old backups
STARTTIME=` date +%Y%m%d-%H%M `

#BACKUP_DIR="/var/backup/db/data"
BACKUP_DIR="/var/backup/db/data"
LOGFILE="/var/backup/db/data.log"
USER="root"
PASSWD="<password>"
KEEP="20"

(
echo
echo " ---MySQL backups start ${STARTTIME} ---"
#delete any backup written more than ${KEEP} days ago
echo "Removing files over ${KEEP} days old from ${BACKUP_DIR}:"
/usr/bin/find  ${BACKUP_DIR} -mindepth 1 -mtime +${KEEP} -print -delete
echo
echo "Performing today's dumps"
#find each database running in this instance of mysl
for DB in ` echo "show databases;"|mysql -u${USER} -p${PASSWD} mysql |awk " NR>1 {print         
$1} " `
do
    #generate a backup file name based on the data base name
    BACKUP_FILE="${BACKUP_DIR}/${DB}-${STARTTIME}.sql"
    echo "Processing database ${DB} into file ${BACKUP_FILE}"
    # dump the database data/schema into the backup file
    mysqldump -u${USER} -p${PASSWD} ${DB} > ${BACKUP_FILE}
    #gzip ${BACKUP_FILE}
done

ENDTIME=` date +%Y%m%d-%H%M `
echo
echo " ---MySQL backups complete ${ENDTIME} ---"
echo
) >>  ${LOGFILE} 2>&1

ENDTIME2=` date +%Y%m%d-%H%M `
(
#copy backup directory to a new backup directory with end time  

tar -zcvf ${BACKUP_DIR}-${ENDTIME2}.tar.gz ${BACKUP_DIR}
)