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

Правильный способ создания инкрементной резервной копии mysql / mariadb

Я читал по этой теме несколько часов, но не совсем понял. Я собираюсь использовать резервную копию Borg в сетевой папке.

Нужны довольно частые резервные копии двоичного журнала .... каждые 5 минут или около того ..

вот мои выводы на данный момент:

  1. запустите mariadb с --log-bin, чтобы включить ведение двоичного журнала. - не уверен, куда поместить двоичные файлы журнала или как их создать резервную копию. Должен ли я останавливать все для «резервного копирования» двоичных файлов журнала?

  2. mysqldump с журналами сброса и некоторыми другими настройками также получает момент времени журналов bin в файле дампа mysql.

Думаю, я ищу только общих правил, чтобы убедиться, что я правильно создаю резервную копию своих баз данных Maria / Mysql.

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

Резервное копирование через binlog - самый очевидный план; однако восстановление очень длинной цепочки бинлогов было бы довольно утомительным.

Для таких коротких RPO / RTO я бы предложил резервную копию на уровне блоков, а именно в виде zfs send/recv: просто запустите MariaDB в наборе данных ZFS и используйте send/recv воспроизвести на другой Машина ZFS. Еще лучше, вы можете использовать саноид автоматизировать вещи.

Если вы хотите избежать неосновных модулей, существует другой подход: вы можете использовать DRBD поверх тонкий объем lvm чтобы иметь синхронную реплику на другую машину, снимая каждые 5 минут ваши тонкие тома (на источнике, в месте назначения или на обоих) через окунь

Не выполняйте mysqldump, это неэффективно и медленно. Используйте xtrabackup, он может работать почти без простоев, тогда как mysqldump потребуется заблокировать все таблицы для записи, чтобы получить согласованную копию.

И хороший вариант - иметь ведомое устройство, которое реплицирует двоичные журналы, таким образом, ваши двоичные журналы сохраняются немедленно. В более новых версиях MariaDB вы можете позволить ведомому устройству следовать за ним, таким образом он будет извлекать бинлоги, но не выполнять их, пока не пройдет определенное время.