Гид по технологиям

Установка MongoDB на Rocky Linux 8

• 6 min read • Базы данных • Обновлено 21 Nov 2025
Установка MongoDB на Rocky Linux 8
Установка MongoDB на Rocky Linux 8

О чём эта статья

Эта инструкция показывает, как быстро и безопасно установить MongoDB Community на сервер с Rocky Linux 8, проверить работоспособность, создать первую базу и пользователя, а также включает чек-листы и краткую методологию для администраторов и разработчиков.

Варианты запроса (primary intent + related)

  • Установка MongoDB
  • MongoDB на Rocky Linux 8
  • Настройка mongod
  • Mongo shell и создание БД
  • Безопасность MongoDB

Требования

  • Сервер с Rocky Linux 8 и минимум 10 ГБ свободного места на диске.
  • Непользователь root с sudo-привилегиями (или root-доступ).
  • Доступ в интернет для получения пакетов из репозитория MongoDB.

Обновление системы

Войдите на сервер как root или пользователь с sudo и выполните обновление пакетов:

sudo dnf update -y

Добавление репозитория MongoDB

Пакет MongoDB отсутствует в стандартных репозиториях Rocky Linux, поэтому нужно добавить официальный репозиторий MongoDB Community. Выполните команду (как root или через sudo):

cat > /etc/yum.repos.d/mongodb.repo << 'EOL'  
[mongodb-org-4.4]  
name=MongoDB Repository  
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/  
gpgcheck=1  
enabled=1  
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc  
EOL

Примечание: строка $releasever обычно подставит номер версии дистрибутива (например, 8). Убедитесь, что репозиторий соответствует вашей версии Rocky Linux.

Установка MongoDB Community

После добавления репозитория обновите метаданные и установите пакет mongodb-org:

sudo dnf update
sudo dnf install -y mongodb-org

Установка MongoDB через dnf

Проверка версии

После установки проверьте версию демона mongod:

mongod --version

Вывод версии mongod

Управление сервисом MongoDB

На RHEL-подобных системах служба демона называется mongod. По умолчанию служба не всегда запускается автоматически после установки, поэтому проверьте её статус:

sudo systemctl status mongod

Если сервис не запущен, запустите и включите его при загрузке:

sudo systemctl start mongod
sudo systemctl enable mongod

Проверьте статус ещё раз:

sudo systemctl status mongod

Статус mongod

Важно: если в инструкции вы встретите команды с именем сервиса mongodb, замените их на mongod — это распространённая путаница.

Где MongoDB хранит данные и логи

По умолчанию:

  • Директория данных: /var/lib/mongo
  • Логи: /var/log/mongodb/mongod.log

Если есть подозрения на ошибку запуска, просмотрите логи:

tail -n 200 /var/log/mongodb/mongod.log

Просмотр лога mongod

Подключение к Mongo Shell

MongoDB предоставляет shell-интерфейс для взаимодействия с базами данных. Откройте его так:

mongo

MongoDB Shell

Внутри shell можно выполнять команды. Чтобы увидеть текущую базу данных:

db

Создание новой базы данных и коллекции

Переключитесь на новую базу данных и создайте коллекцию с одним документом:

use test-db

db.linux.insertOne(
  { "ubuntu" : "20.04",
   "centos" : "8",
   "debian" : "10"
  }
)

Нажмите Enter, чтобы выполнить вставку.

Показать коллекции и документы:

show collections

db.linux.find().pretty()

Создание пользователя базы данных

Внутри mongo shell создадим пользователя admin с правами чтения/записи в базе test-db:

db.createUser(
  {
   user: 'admin',
   pwd: '$trongP@ssWord',
   roles: [ { role: 'readWrite', db: 'test-db' } ]
  }
);

Нажмите Enter, затем проверьте список пользователей:

db.getUsers()

Добавление нового пользователя

Чтобы выйти из shell:

exit

Критерии приёмки

  • Сервис mongod успешно запущен и в статусе active (running).
  • mongod отвечает на локальные подключения через mongo shell.
  • Создана база test-db, коллекция linux и документ успешно возвращается через db.linux.find().
  • Пользователь admin присутствует в результатах db.getUsers().

Базовая безопасность и жёсткая настройка

Важно: по умолчанию MongoDB не включает аутентификацию. На production-сервере выполните следующие шаги:

  1. Включите аутентификацию в конфигурационном файле /etc/mongod.conf, добавив или изменив секцию security:
security:
  authorization: "enabled"
  1. Ограничьте сетевые интерфейсы: в /etc/mongod.conf проверьте bindIp (по умолчанию 127.0.0.1). Для доступа с конкретных хостов перечислите их явно.

  2. Настройте брандмауэр (firewalld) для ограничения доступа к порту 27017 только разрешённым IP/сетям.

sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.0.2.0/24" port protocol="tcp" port="27017" accept'
sudo firewall-cmd --reload
  1. Используйте сильные пароли и, при возможности, TLS/SSL между клиентами и сервером.

  2. Регулярно делайте бэкапы (mongodump/mongorestore или filesystem snapshots).

  3. Следите за правами доступа на каталоги /var/lib/mongo и /var/log/mongodb.

Чек-листы по ролям

Администратор:

  • Добавить репозиторий и установить mongodb-org.
  • Запустить и включить mongod.
  • Включить authorization и настроить bindIp.
  • Настроить брандмауэр и мониторинг логов.
  • Выполнить резервное копирование.

Разработчик:

  • Подключиться через mongo shell.
  • Создать базу и коллекции.
  • Создать тестовых пользователей с минимальными правами.
  • Написать и запустить простые запросы find/insert/update.

Мини‑методология внедрения (3 шага)

  1. Установка и базовая проверка: добавить репозиторий, установить пакет, запустить mongod и проверить лог.
  2. Тестирование окружения: создать тестовую базу, вставить данные, проверить восстановление бэкапа.
  3. Безопасность и эксплуатация: включить авторизацию, настроить сеть, настроить бэкапы и мониторинг.

Полезный cheat sheet команд

  • Обновление системы: sudo dnf update -y
  • Установка: sudo dnf install -y mongodb-org
  • Запуск: sudo systemctl start mongod
  • Включить при старте: sudo systemctl enable mongod
  • Статус: sudo systemctl status mongod
  • Просмотр логов: tail -n 200 /var/log/mongodb/mongod.log
  • Mongo shell: mongo
  • Создать пользователя: db.createUser(…)
  • Бэкап: mongodump –out /path/to/dump
  • Восстановление: mongorestore /path/to/dump

Совместимость и заметки по версиям

  • В этом руководстве использован репозиторий для MongoDB 4.4; при необходимости поменяйте номер версии в /etc/yum.repos.d/mongodb.repo.
  • MongoDB 4.4 поддерживает большинство современных клиентских драйверов, но перед обновлением проверьте совместимость приложений.
  • Если вы мигрируете с более старой версии (например, 3.x), сначала прочитайте официальные заметки об обновлении и выполните тестовую миграцию.

Когда такой подход не подходит

  • Для предприятий с требованием корпоративной поддержки и расширённых возможностей (LDAP, Kerberos, продвинутый мониторинг) рассмотрите MongoDB Enterprise.
  • Если у вас распределённые транзакции ACID-критичного уровня, возможно, лучше подойдёт реляционная СУБД.

Частые ошибки и как их исправить

  • Сервис не запускается: проверьте /var/log/mongodb/mongod.log на сообщения об ошибках, проверьте права каталогов и свободное место.
  • Невозможно подключиться удалённо: убедитесь в правильности bindIp и правил firewall.
  • Ошибки при обновлении пакетов: очистите кэш dnf и проверьте GPG-ключ репозитория.

Вопросы и ответы

Как включить аутентификацию?

Включите authorization: “enabled” в /etc/mongod.conf и перезапустите mongod. Создайте административного пользователя перед включением, если нужно.

Как сделать бэкап базы?

Используйте mongodump для логической резервной копии или снимки файловой системы для быстрого восстановления (учитывая согласованность данных).

Где хранятся данные и логи?

По умолчанию данные в /var/lib/mongo, логи в /var/log/mongodb/mongod.log.

Краткая сводка

  • Добавьте официальный репозиторий MongoDB и установите mongodb-org.
  • Запускайте и управляйте службой через systemctl (mongod).
  • Тестируйте через mongo shell, создавайте базы и пользователей.
  • Обязательно включайте авторизацию и ограничивайте сетевой доступ на production.

Важно: перед внесением изменений на production выполните тестирование на стенде.

Глоссарий (одно предложение)

  • mongod: демон сервера MongoDB, который обслуживает подключения и хранит данные.
  • mongo: интерактивная оболочка для работы с MongoDB.
  • коллекция: набор документов в MongoDB, аналог таблицы в реляционных БД.

Заключение

В этой инструкции мы установили MongoDB Community на Rocky Linux 8, проверили работу демона, создали базу и пользователя, а также рассмотрели базовые меры безопасности и полезные команды для администраторов и разработчиков. Следуйте чек-листам и методологии, чтобы оперативно и безопасно внедрять MongoDB в вашей инфраструктуре.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро