Резервное копирование и восстановление

Независимо от того, насколько стабильной и надежной является система, она не может гарантировать отсутствие сбоев. Для предотвращения потери данных необходимо регулярное создание резервных копий. MatrixDB предоставляет инструменты mxbackup и mxrestore для реализации резервного копирования и восстановления кластера.

1. mxbackup

1.1 Список часто используемых параметров mxbackup

Параметр Описание
--dbname Резервная копия базы данных
--backup-dir Каталог для хранения файлов резервных копий
--metadata-only Резервное копирование только метаданных (DDL), без данных таблиц
--data-only В противоположность --metadata-only, резервируется только данные
--jobs Количество задач при параллельном резервном копировании; увеличение этого значения повышает параллелизм
--include-table Указывает таблицу для резервного копирования в формате \<schema-name>.\<table-name>; можно указать несколько таблиц.

Подробные способы использования mxbackup см. в Документации

1.2 Пример резервного копирования

Базовое использование выглядит следующим образом:

mxbackup --dbname test --backup-dir /home/mxadmin/backup

Примечание: mxbackup не предоставляет параметры подключения к базе данных, поэтому его необходимо запускать на мастер-узле с аккаунтом, не требующим пароль.
Перед запуском настройте переменные окружения PGHOST, PGUSER и PGPORT.

После выполнения вышеуказанной команды рассмотрим содержимое каталога. Структура каталога резервной копии имеет следующий вид:

mxseg{节点号}/backups/{日期}/{日期+时间戳}

Данные резервной копии находятся в этом каталоге.

Номер узла master — -1, сегменты начинаются с 0. Если на хосте расположено несколько узлов, будет несколько каталогов mxseg{номер узла}.

2. mxrestore

mxrestore используется для восстановления данных, созданных с помощью mxbackup. Использование следующее:

mxrestore --backup-dir /home/mxadmin/backup --timestamp 20210820143820

--backup-dir указывает каталог резервной копии и должен совпадать с параметром mxbackup.

--timestamp указывает метку времени резервной копии — это имя каталога уровня {date + timestamp} в каталоге резервных копий, поскольку может существовать несколько резервных копий.

После выполнения вышеуказанной команды база данных будет восстановлена.

Подробные способы использования mxrestore см. в Документации