Резервное копирование / восстановление MongoDB - PullRequest
0 голосов
/ 24 апреля 2020

В нашей производственной базе данных MongoDB у нас есть база данных, размер которой составляет около 700 ГБ. Нам нужно перенести данные на новый сервер MongoDB, который находится в другом домене, чем текущий сервер. Пожалуйста, кто-нибудь, предложите, какой лучший способ сделать это?

  1. Должны ли мы запустить dump / restore для этих данных? Требуется ли дополнительно 700 ГБ места для запуска этой команды?
  2. Приблизительно сколько времени потребуется для выполнения команды dump / restore? (У нас 12 ГБ ОЗУ на сервере)
  3. Есть ли какой-либо другой лучший способ переноса данных на сервер, который находится в другом домене?

1 Ответ

0 голосов
/ 25 апреля 2020

Вы можете использовать mongodump, используя параметр --gzip, так как это обеспечит 10-кратное сжатие. Размер резервной копии составит около 70 ГБ.

Сколько времени потребуется для всего процесса, зависит от множества параметров. Однако позвольте мне дать приблизительную оценку

  • Приблизительно 30-40 минут для резервного копирования (mongodump)
  • Предполагается, что вы переместите его на другой сервер в локальной сети. Это может занять 45 минут
  • mongorestore займет около 30 минут

Лучший способ, если оба сервера находятся в одной сети, это настроить набор реплик и добавить новый сервер как член реплики установлен с приоритетом и голосами как 0. Вы можете проверить эту ссылку для более подробной информации. После репликации данных вы можете перенастроить новый сервер с приоритетом 1 и голосами 1, а затем отключить текущий сервер.

...