
MongoDB — это бесплатная документоориентированная база данных с открытым исходным кодом. Она принадлежит к семейству баз данных NoSQL, которые отличаются от традиционных табличных SQL-баз данных, таких как MySQL и PostgreSQL.
В MongoDB данные хранятся в гибких документах формата JSON, поля которых могут различаться от документа к документу. Предопределенная схема не требуется, а структура данных может меняться со временем.
В этом руководстве мы покажем вам, как установить и настроить последнюю версию MongoDB Community Edition в системах Debian 9 из официальных репозиториев MongoDB.
Предпосылки
Прежде чем продолжить работу с этим руководством, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .
Установка MongoDB
На момент написания статьи последней версией MongoDB была версия 4.0.
Прежде чем продолжить процесс установки, перейдите в раздел «Установка на Debian» документации MongoDB и проверьте, доступна ли новая версия.
Следующие шаги описывают установку MongoDB в системе Debian:
-
Сначала установите пакеты, необходимые для добавления нового репозитория:
sudo apt install software-properties-common dirmngr -
Добавьте ключ MongoDB GPG в свою систему с помощью следующей команды:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4 -
После импорта ключа для добавления репозитория MongoDB выполните:
sudo add-apt-repository 'deb http://repo.mongodb.org/apt/debian stretch/mongodb-org/4.0 main'Если вы хотите установить более старую версию MongoDB, замените
4.0на предпочтительную для вас версию. -
Обновить список пакетов:
sudo apt update -
Установите метапакет
mongodb-orgс помощью:sudo apt install mongodb-orgСледующие пакеты будут установлены в вашей системе как часть пакета
mongodb-org:-
mongodb-org-server— демонmongodи соответствующие сценарии инициализации и конфигурации. -
mongodb-org-mongos— демонmongos. -
mongodb-org-shell— оболочка MongoDB, представляющая собой интерактивный JavaScript-интерфейс для MongoDB. Она используется для выполнения административных задач через командную строку. -
mongodb-org-tools— содержит несколько инструментов MongoDB для импорта и экспорта данных, статистики, а также другие утилиты.
-
-
Запустите демон MongoDB и включите его запуск при загрузке, введя:
sudo systemctl start mongodsudo systemctl enable mongod -
Чтобы проверить, успешно ли завершилась установка, подключимся к серверу базы данных MongoDB с помощью инструмента
mongoи выведем на экран состояние соединения:mongo --eval 'db.runCommand({ connectionStatus: 1 })'Вывод будет выглядеть так:
MongoDB shell version v4.0.2 connecting to: mongodb://127.0.0.1:27017 MongoDB server version: 4.0.2 { "authInfo" : { "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1 }Значение
1для поляokуказывает на успех.
Настройка MongoDB
MongoDB использует файл конфигурации в формате YAML , /etc/mongod.conf . Вы можете настроить свой экземпляр MongoDB, отредактировав этот файл.
Настройки конфигурации по умолчанию подходят большинству пользователей. Однако для производственной среды рекомендуется раскомментировать раздел безопасности и включить авторизацию, как показано ниже:
/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
Введите пароль при появлении запроса. После входа в оболочку MongoDB подключитесь к базе данных 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 на сервере Debian 9.
Более подробную информацию по этой теме можно найти в руководстве MongoDB 4.0 .
База данных Debian MongoDB Не используете Debian 9?
Выберите другую ОС: центос 7 центос 8 дебиан 10 убунту 18.04 убунту 20.04
Связанные руководства