
MongoDB — это бесплатная документоориентированная база данных с открытым исходным кодом. Она принадлежит к семейству баз данных NoSQL, которое отличается от традиционных табличных SQL-баз данных, таких как MySQL и PostgreSQL.
В MongoDB данные хранятся в гибких документах формата JSON, поля которых могут различаться от документа к документу. Предопределенная схема не требуется, а структура данных может меняться со временем.
В этом руководстве объясняется, как установить и настроить MongoDB Community Edition на сервере CentOS 8.
Установка MongoDB
MongoDB отсутствует в основных репозиториях CentOS 8. Мы включим официальный репозиторий MongoDB и установим пакеты.
На момент написания этой статьи последней версией MongoDB, доступной в официальных репозиториях MongoDB, была версия 4.2. Перед установкой ознакомьтесь с разделом «Установка в Red Hat» документации MongoDB и проверьте наличие новой версии.
Чтобы установить MongoDB в системе CentOS 8, выполните следующие действия как пользователь root или пользователь с привилегиями sudo :
-
Включите репозиторий MongoDB, создав новый файл репозитория с именем
mongodb-org.repoвнутри каталога/etc/yum.repos.d/:sudo nano /etc/yum.repos.d/mongodb-org.repo/etc/yum.repos.d/mongodb-org.repo
[mongodb-org-4.2] name = MongoDB Repository baseurl = https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/ gpgcheck = 1 enabled = 1 gpgkey = https://www.mongodb.org/static/pgp/server-4.2.ascЕсли вы хотите установить более старую версию MongoDB, замените каждый экземпляр
4.2на предпочитаемую вами версию. -
Установите метапакет
mongodb-org:sudo dnf install mongodb-orgВо время установки вам будет предложено импортировать GPG-ключ MongoDB. Введите
yи нажмитеEnter.Следующие пакеты будут установлены в вашей системе как часть пакета
mongodb-org:-
mongodb-org-server— демонmongod, а также соответствующие сценарии инициализации и конфигурации. -
mongodb-org-mongos— демонmongos. -
mongodb-org-shell— оболочка mongo, интерактивный интерфейс JavaScript для MongoDB, используемый для выполнения административных задач через командную строку. -
mongodb-org-tools— содержит несколько инструментов MongoDB для импорта и экспорта данных, статистики, а также другие утилиты.
-
-
После завершения установки включите и запустите службу MongoDB:
sudo systemctl enable mongod --now -
Чтобы проверить установку, подключитесь к серверу базы данных MongoDB и распечатайте версию сервера:
mongoВыполните следующую команду, чтобы отобразить версию MongoDB:
db.version()Вывод будет выглядеть примерно так:
4.2.3
Настройка MongoDB
Файл конфигурации MongoDB называется mongod.conf и находится в каталоге /etc . Он имеет формат YAML .
В большинстве случаев настроек по умолчанию достаточно. Однако для производственной среды мы рекомендуем раскомментировать раздел безопасности и включить авторизацию, как показано ниже:
/etc/mongod.conf
security : authorization : enabled
Параметр authorization включает управление доступом на основе ролей (RBAC) , которое регулирует доступ пользователей к ресурсам и операциям базы данных. Если этот параметр отключен, каждый пользователь будет иметь доступ к любой базе данных и выполнять любые действия.
После внесения изменений в файл конфигурации MongoDB перезапустите службу mongod:
sudo systemctl restart mongod
Дополнительную информацию о параметрах конфигурации MongoDB можно найти на странице документации «Параметры файла конфигурации» .
Создание административного пользователя MongoDB
Если вы включили аутентификацию MongoDB, вам потребуется создать административного пользователя, который сможет получать доступ к экземпляру MongoDB и управлять им.
Сначала откройте оболочку MongoDB с помощью:
mongo
Введите следующую команду для подключения к базе данных admin :
use admin
switched to db admin
Создайте нового пользователя с именем mongoAdmin и ролью userAdminAnyDatabase :
db.createUser({user: "mongoAdmin",pwd: "changeMe",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
Successfully added user: { "user" : "mongoAdmin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] }
Вы можете назвать административного пользователя MongoDB по своему усмотрению.
Выйдите из оболочки mongo с помощью:
quit()
Чтобы протестировать изменения, войдите в оболочку mongo, используя ранее созданную вами учетную запись администратора:
mongo -u mongoAdmin -p --authenticationDatabase admin
MongoDB shell version v4.2.3 Enter password:
use admin
switched to db admin
Теперь выведите пользователей с помощью:
show users
{ "_id" : "admin.mongoAdmin", "user" : "mongoAdmin", "db" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ], "mechanisms" : [ "SCRAM-SHA-1", "SCRAM-SHA-256" ] }
Заключение
Мы показали вам, как установить и настроить MongoDB 4.2 на сервере CentOS 8.
Более подробную информацию по этой теме можно найти в руководстве MongoDB 4.2 .
Если у вас возникла проблема или вы хотите оставить отзыв, оставьте комментарий ниже.
База данных centos mongodb Не используете CentOS 8?
Выберите другую ОС: центос 7 дебиан 10 дебиан 9 sssss «ubuntu 18.04» убунту 20.04
Связанные руководства