Как установить MongoDB на CentOS 7

MongoDB — это бесплатная база данных документов с открытым исходным кодом. Она классифицируется как база данных NoSQL, которая отличается от традиционных баз данных SQL на основе таблиц, таких как MySQL и PostgreSQL.

В MongoDB данные хранятся в гибких документах, подобных JSON, где поля могут варьироваться от документа к документу. Для этого не требуется заранее заданная схема, а структура данных может изменяться со временем.

В этом руководстве мы покажем вам, как установить и настроить MongoDB Community Edition на сервере CentOS 7 из официальных репозиториев MongoDB.

Подготовка

Прежде чем продолжить это руководство, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .

Установка MongoDB

На момент написания этой статьи последней версией MongoDB, доступной в официальных репозиториях MongoDB, была версия 4.0. Прежде чем перейти к следующему шагу, посетите раздел « Установка в Red Hat » документации MongoDB и проверьте, доступен ли новый выпуск.

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

  1. Включение репозитория MongoDB

    Чтобы добавить репозиторий MongoDB в вашу систему, откройте текстовый редактор и создайте новый файл конфигурации репозитория YUM с именем mongodb-org.repo внутри каталога /etc/yum.repos.d/ :

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

    Если вы хотите установить старую версию MongoDB, замените каждый экземпляр 4.0 на предпочитаемую версию.

  2. Установка MongoDB

    Теперь, когда репозиторий включен, вы можете установить мета-пакет mongodb-org с помощью утилиты yum:

     sudo yum install mongodb-org

    Во время установки yum предложит вам импортировать GPG-ключ MongoDB. Введите y и нажмите Enter .

    Следующие пакеты будут установлены в вашей системе как часть пакета mongodb-org :

    • mongodb-org-server — демон mongod и соответствующие сценарии инициализации и конфигурации.
    • mongodb-org-mongos — демон mongos .
    • mongodb-org-shellmongodb-org-shell mongo, интерактивный интерфейс JavaScript для MongoDB, используемый для выполнения административных задач из командной строки.
    • mongodb-org-tools — содержит несколько инструментов MongoDB для импорта и экспорта данных, статистики, а также другие утилиты.
  3. Запуск MongoDB

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

     sudo systemctl start mongod sudo systemctl enable mongod
  4. Проверка установки MongoDB

    Чтобы проверить установку, мы подключимся к серверу базы данных MongoDB с mongo инструмента mongo и распечатаем версию сервера:

     mongo

    Как только вы окажетесь внутри оболочки MongoDB, введите следующую команду, которая отобразит версию MongoDB:

     db.version()

    Результат будет выглядеть следующим образом:

     4.0.1

Настройка MongoDB

Вы можете настроить свой экземпляр MongoDB, отредактировав /etc/mongod.conf конфигурации /etc/mongod.conf написанный на YAML .

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

/etc/mongod.conf
security:
  authorization: enabled

Параметр authorization включает управление доступом на основе ролей (RBAC), которое регулирует доступ пользователей к ресурсам и операциям базы данных. Если эта опция отключена, каждый пользователь будет иметь доступ к любой базе данных и сможет выполнять любые действия.

После внесения изменений в файл конфигурации MongoDB перезапустите службу mongod:

sudo systemctl restart mongod

Чтобы найти дополнительную информацию о параметрах конфигурации, доступных в MongoDB 4.0, посетите страницу документации по параметрам файла конфигурации .

Создание администратора MongoDB

Если вы включили аутентификацию MongoDB, создайте одного административного пользователя MongoDB, которого вы будете использовать для доступа и управления экземпляром MongoDB.

Сначала получите доступ к оболочке mongo с помощью:

mongo

Как только вы окажетесь внутри оболочки MongoDB, введите следующую команду для подключения к базе данных 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
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"
	]
}

Вы также можете попытаться получить доступ к оболочке mongo без каких-либо аргументов (просто введите mongo ) и посмотрите, сможете ли вы перечислить пользователей, используя те же команды, что и выше.

Выводы

Вы узнали, как установить и настроить MongoDB 4.0 на своем сервере CentOS 7.

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

Оставьте комментарий