Automysqlbackup — автоматизация резервного копирования mysql
Как я уже говорил — «резервное копирование всему голова», хочу поделиться с вами, ребятушки, очень полезным скриптом, которым пользуюсь очень давно. Скрипт этот предназначен для автоматизации резервного копирования баз данных СУБД Mysql, работает на основе mysqldump.
Офстраница на
Приступим к настройке скрипта (думаю со скачиванием проблем не возникло??))), для начала я его переименовал в что-то с более нормальным именем:
# 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="maintenance@example.com" |
если 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 |
т.е. каждый день в час ночи будет произведен бекап.
Поделись с друзьями:
Рубрики: DataBases, FreeBSD, MySQL, WebServer · Теги: Automysqlbackup, FreeBSD, mysql, sh, резервное копирование