Automysqlbackup — автоматизация резервного копирования mysql

Как я уже говорил — «резервное копирование всему голова», хочу поделиться с вами, ребятушки, очень полезным скриптом, которым пользуюсь очень давно. Скрипт этот предназначен для автоматизации резервного копирования баз данных СУБД Mysql, работает на основе mysqldump.
Офстраница на sourceforge , собственно тут его и можно скачать))
Приступим к настройке скрипта (думаю со скачиванием проблем не возникло??))), для начала я его переименовал в что-то с более нормальным именем:

# mv automysqlbackup-2.5.1-01.sh automysqlbackup.sh
# ee automysqlbackup.sh

собственно по настройкам:

имя пользователя для подключения к Mysql серверу

USERNAME=dbusername

пароль для подключения к Mysql серверу

PASSWORD=dbpassword

имя сервера БД, можно указать айпишник

DBHOST=localhost

имена базы данных через пробел, или all для всех

DBNAMES="all"

директория для хранения резервных копий

 BACKUPDIR="/usr/backup"

что будет отправляться на мыло

MAILCONTENT="log"

варианты:
log — только протокол работы;
files — протокл и файлы sql;
stdout — при запуске вручную, выводить отчет на экран;
quiet — отправлять протокол только при возникновении ошибок.

максимальный размер вложения в письме

MAXATTSIZE="4000"

кому отправлять письмо

MAILADDR="[email protected]"

если DBNAMES стоит all, то здесь можно указать базы данных которые не нужно бекапить

DBEXCLUDE=""

добавлять в sql файлы баз данных CREATE DATABASE

 CREATE_DATABASE=yes

для каждой базы данных будет создана своя директория, если стои ноу, то будет создан один большой файл дампа, что не очень удобно

SEPDIR=yes

в какой день недели делать недельную копию (1 — понедельник)

DOWEEKLY=6

метот сжатия, gzip или bzip2 (любит ресурсы, но и сжимает лучше)

COMP=gzip

сохранять дополнительные копии последнего дампа в отдельную директорию

LATEST=yes

путь к файлу сокета мускула, если используется

SOCKET=/tmp/mysql.sock

действия перед началом копирования

#PREBACKUP="/etc/mysql-backup-pre"

соответсвенно после 🙂

#POSTBACKUP="/etc/mysql-backup-post"

С настройками вроде бы все, теперь засунем это все дело в крон:

# crontab -e

например так:

0 1 * * * /usr/local/scripts/automysqlbackup.sh

т.е. каждый день в час ночи будет произведен бекап.

Поделись с друзьями:

Опубликовано 14.06.2011 в 12:13 · Автор komivlad · Ссылка
Рубрики: DataBases, FreeBSD, MySQL, WebServer · Теги: , , , ,

Написать комментарий