
MongoDB — это бесплатная документоориентированная база данных с открытым исходным кодом. Она принадлежит к семейству баз данных NoSQL, которое отличается от традиционных табличных SQL-баз данных, таких как MySQL и PostgreSQL.
В MongoDB данные хранятся в гибких документах формата JSON, поля которых могут различаться от документа к документу. Предопределенная схема не требуется, а структура данных может меняться со временем.
В этом руководстве мы рассмотрим процесс установки и настройки последней версии MongoDB Community Edition на компьютере с Ubuntu 18.04 из официальных репозиториев MongoDB.
Предпосылки
Прежде чем продолжить работу с этим руководством, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .
Установка MongoDB
На момент написания статьи последней версией MongoDB была версия 4.0.
Прежде чем продолжить процесс установки, перейдите в раздел «Установка в Ubuntu» документации MongoDB и проверьте, доступна ли новая версия.
Следующие шаги описывают установку MongoDB на ваш сервер Ubuntu:
-
Добавьте ключ MongoDB GPG в свою систему с помощью следующей команды:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4После импорта ключа добавьте репозиторий MongoDB с помощью:
sudo add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'Если вы получили сообщение об ошибке «
add-apt-repository command not found, установите пакетsoftware-properties-common.Чтобы установить более старую версию MongoDB, замените
4.0на предпочтительную версию. -
Обновите список пакетов и установите метапакет
mongodb-org, введя:sudo apt updatesudo 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.10 connecting to: mongodb://127.0.0.1:27017 MongoDB server version: 4.0.10 { "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
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 на сервере Ubuntu 18.04. Подробнее об этом можно узнать в руководстве по MongoDB 4.0 .
Если у вас возникла проблема или вы хотите оставить отзыв, оставьте комментарий ниже.
База данных Ubuntu MongoDB Не используете Ubuntu 18.04?
Выберите другую ОС: центос 7 центос 8 дебиан 10 дебиан 9 убунту 20.04
Связанные руководства