Как создать резервную копию и восстановить MongoDB в Ubuntu

Введение в MongoDB

MongoDB-один из самых известных движков баз данных NoSQL. Она широко рассматривается как мощная, масштабируемая и надежная в использовании база данных. MongoDB использует документы, подобные JSON, с дополнительными схемами для эффективной работы. MongoDB поддерживает уникальную модель данных на основе документов, которая помогает разработчикам сопоставлять данные и код. MongoDB еще больше расширяет возможности разработки приложений, предоставляя унифицированный и надежный API для запросов.

MongoDB позволяет легко оптимизировать, масштабировать и развертывать приложения с помощью встроенных инструментов сегментирования, репликации, повышения производительности и индексирования, что позволяет уверенно работать в рабочей среде. MongoDB гарантирует, что ваши SLA по производительности будут соблюдены в любой благоприятной среде, независимо от того, является ли это 450 миллионами пользователей по всему миру или вашим первым клиентом.

Понимание шагов по установке MongoDB в Ubuntu

Вы можете выполнить следующие действия, чтобы установить MongoDB в Ubuntu с помощью менеджера пакетов apt:

  • Импорт открытого ключа, используемого Системой управления пакетами: Откройте свой терминал и введите следующую команду, чтобы начать импорт открытого ключа GPG для MongoDB со статического сайта MongoDB:
wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -

Как только эта операция вернется будет выполнена вы сможете перейти к следующему шагу.

  • Создайте файл списка для MongoDB: Затем создайте файл списка /etc/apt/sources.list.d/mongodb-org-5.0.для вашей версии Ubuntu (версия 16.04 или выше). Если вы не знаете версию Ubuntu, запущенную на вашем хосте, откройте оболочку или терминал на вашем хост-сервере/устройстве и выполните эту команду:
lsb_release -dc

Для получения более подробной информации обратитесь к Руководство по установке MongoDB.

  • Обновите базу данных пакетов:
sudo apt-get update
  • Установите пакеты MongoDB: Для этого шага вы можете выбрать установку последней версии MongoDB или конкретной версии MongoDB. Если вы хотите установить последнюю стабильную версию, выполните следующую команду:
sudo apt-get install -y mongodb-org

Понимание шагов по восстановлению и резервному копированию MongoDB в Ubuntu

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

Шаг 1. Создание каталога резервных копий

  • Вы можете начать с создания каталога резервных копий, в котором вы можете хранить все резервные копии для удобства доступа. Он также служит более организованным хранилищем для ваших резервных копий. Вот как вы можете создать каталог резервных копий:
sudo mkdir /var/backups/mongobackups

Шаг 2. Создание резервной копии с помощью mongodump

  • mongodump-это утилита, которую вы используете для экспорта данных из базы данных. Эта утилита извлекет аргумент –db, в котором будет указано имя желаемой базы данных для создания резервной копии для:
sudo mongodump --db dbyour --out /var/backups/mongobackups/
  • В приведенной выше команде вы создаете резервную копию базы данных с именем dbyour. Аргумент –out используется для задания каталога, в котором вы хотите создать резервную копию. Как только вы выполнили данную команду, вы получите следующее сообщение:
2022-01-04T19:30:24.230+0000 writing dbyour.coach to 2022-01-04T19:30:24.230+0000 done dumping dbyour.coach (2100 documents)
  • В случае, если вы забудете добавить имя базы данных с помощью аргумента –db, mongodump создаст резервную копию и сохранит все ваши базы данных по умолчанию.

Шаг 3. Автоматизация резервного копирования

  • На предыдущем шаге вы создали дамп вручную. Чтобы предотвратить потерю данных, вам необходимо регулярно создавать резервные копии через определенный промежуток времени. Допустим, вы хотите ежедневно делать резервную копию в 2 часа ночи, и для этого вы можете следовать этому фрагменту:
sudo mongodump --db dbyour --out /var/backups/mongobackups/`date +"%m-%d-%y"`
  • Чтобы создавать автоматическое резервное копирование ежедневно в 2 часа ночи, вы можете настроить crontab следующим образом:
sudo crontab -e
  • Затем установите команду mongodump внутри crontab для выполнения запроса в 2:00 утра:
* 2 * * * mongodump --out /var/backups/mongobackups/`date +"%m-%d-%y"`
  • Это задание cron ежедневно создает дамп вашей базы данных, однако, если размер вашей базы данных слишком велик, у вас может быстро закончиться место на диске со слишком большим количеством резервных копий для отслеживания. Поэтому, чтобы предотвратить возникновение этой проблемы, вам необходимо регулярно удалять старые резервные копии. Например, если вы хотите Удалить все резервные копии старше 5 дней, вы можете использовать эту команду bash:
find /var/backups/mongobackups/ -mtime +5 -exec rm -rf {} \;
  • Аналогично ежедневному резервному копированию, установите задание cron для удаления резервных копий, которое будет выполняться ежедневно перед созданием новых резервных копий, скажем, в 1:56 утра. Введите следующую команду, чтобы установить задание cron на 1:56 ежедневно:
56 1 * * * find /var/backups/mongobackups/ -mtime +5 -exec rm -rf {} \;

Шаг 4. Восстановление резервной копии с помощью mongostore

  • Вы можете использовать mongostore для восстановления базы данных из резервной копии, чтобы извлечь точную копию вашей базы данных за заданное/определенное время, а также типы данных и индексы. Вот команда для того же:
sudo mongorestore --db dbyour --drop /var/backups/mongobackups/01-05-22/dbyour/

Добавить комментарий