Я настроил mongodb набор реплик (у меня 3 экземпляра db -Redhat), и я хотел бы сделать резервную копию файла db (dbPath: / вар / библиотека / монго) с помощью rsync
, 10 или 12 раз в день.
Итак, мне нужно остановить mongod
процесс перед запуском rsync
?
Или я могу начать rsync
(dbPath: / вар / библиотека / монго) без остановки mongod
обработать.
какой рекомендуемый метод резервного копирования, кроме резервного копирования LVM и mongodump
?
Итак, мне нужно остановить
mongod
процесс перед запускомrsync
?
Чтобы сделать резервную копию копии файла с rsync
или cp
вам нужно приостановить запись, остановив mongod
обслуживание или выдача db.fsyncLock()
команда в mongo
оболочку или через драйвер. Поскольку вторичная копия, с которой вы выполняете резервное копирование, будет периодически доступна при таком подходе, было бы лучше сделать ее скрытый чтобы драйверы не пытались читать данные от этого члена, когда он не работает или fsyncLock'd.
Я бы обязательно проверил несколько циклов полного резервного копирования и восстановления. В частности, будьте осторожны rsync
параметры, которые могут сделать резервные копии недействительными (например: --ignore-existing
, --size-only
, --partial
).
Примечание: если вы используете fsyncLock()
подход есть db.fsyncUnLock()
команда для восстановления нормальной работы после завершения резервного копирования. Еще одно предостережение: механизм хранения WiredTiger поддерживает только fsyncLock
в MongoDB 3.2 или новее.
могу я начать
rsync
(dbPath: / вар / библиотека / монго) без остановкиmongod
обработать.
Нет. Это приведет к несогласованному резервному копированию.
какой рекомендуемый метод резервного копирования, кроме резервного копирования LVM и
mongodump
?
Поддерживаемые подходы к резервному копированию описаны в документации: Методы резервного копирования MongoDB.
Существуют менее разрушительные (и более непрерывные) подходы к резервному копированию, такие как использование службы резервного копирования на основе агентов (например, MongoDB Cloud Manager).
Если вы хотите выполнить резервное копирование путем копирования базовых файлов данных, моментальные снимки файловой системы (LVM / EBS / ...), как правило, менее разрушительны и более рекомендуются, чем приостановка всех операций записи в mongod
. Снимки файловой системы на фоне запущенного mongod
Если вы хотите создать единообразную резервную копию, у вас есть некоторые требования: все данные должны находиться на одном томе, должно быть включено ведение журнала, а файловая система должна поддерживать моментальные снимки на определенный момент времени. Для получения полной информации ознакомьтесь с официальной документацией и руководствами по резервному копированию.