Резервное копирование / восстановление, как бармен для MySQL
Я хотел бы иметь инструмент резервного копирования / восстановления для серверов MySQL (MariaDB/Percona), который имеет те же функции, что и бармен для postgresql
- регулярно делать полные резервные копии (xtrabackup, но и крутая жизнь с другими тоже)
- собирать двоичные журналы (копировать их или подключать как подчиненные...)
- какой-то "простой" способ восстановить один сервер до состояния конкретной транзакции или момента времени (в идеальном мире этот инструмент будет копировать базовую резервную копию и затем автоматически воспроизводить журналы до рассматриваемого момента времени)
Вещи, которые были бы хорошими:
- простой способ добавить новые серверы в систему резервного копирования
- восстановление резервных копий
Любые намеки, идеи, ...?
1 ответ
Если вы хотите использовать инкрементное резервное копирование, используйте innobackupex
Создание инкрементных резервных копий с помощью innobackupex
Во-первых, вам нужно сделать полную резервную копию в качестве BASE для последующих инкрементных резервных копий:
$ innobackupex /data/backups
Это создаст каталог с метками времени в /data/backups. Предполагая, что резервное копирование выполняется в последний день года, BASEDIR будет, например, /data/backups/2013-03-31_23-01-18.
Примечание. Вы можете использовать опцию innobackupex --no-timestamp, чтобы переопределить это поведение, и резервная копия будет создана в указанном каталоге. Если вы проверите файл xtrabackup-checkpoints в BASE-DIR, вы должны увидеть что-то вроде:
backup_type = full-backuped
from_lsn = 0
to_lsn = 1291135
Чтобы создать инкрементную резервную копию на следующий день, используйте параметр --incremental и укажите BASEDIR:
$ innobackupex --incremental /data/backups --incremental-basedir=BASEDIR
и другой каталог с метками времени будет создан в /data/backups, в этом примере
/data/backups/2013-04-01_23-01-18, содержащий инкрементную резервную копию. Мы назовем это ИНРЕКЦИОНАЛЬ-ДИР-1.
Если вы проверите файл xtrabackup-checkpoints в INCREMENTAL-DIR-1, вы должны увидеть что-то вроде:
backup_type = incremental
from_lsn = 1291135
to_lsn = 1352113
Создание другой инкрементной резервной копии на следующий день будет аналогичным, но на этот раз предыдущая инкрементная будет базовой:
$ innobackupex --incremental /data/backups --incremental-basedir=INCREMENTAL-DIR-1
выход (в этом примере) / data / backups / 2013-04-02_23-01-18. Вместо этого мы будем использовать INCREMENTAL-DIR-2 для простоты.