Смотрите также |
---|
Almalinux 9 |
MongoDB — это база данных документов с открытым исходным кодом, используемая во многих современных веб-приложениях. Она классифицируется как база данных NoSQL. В отличие от реляционных баз данных, которые хранят данные в таблицах используя жесткую схему, MongoDB хранит данные в документах с гибкой схемой. Затем приложения могут получить эту информацию в формате JSON.
В этой статье узнаем, как установить эту СУБД в Debian
Протестировано на:
Debian: 12
Обновление ОС
Обновите свою операционную систему Debian, чтобы убедиться, что все существующие пакеты обновлены до последних доступных версий:
sudo apt update && sudo apt upgrade -y
Установка зависимостей
Установите необходимые для установки пакеты с помощью следующей команды:
sudo apt install curl apt-transport-https software-properties-common ca-certificates dirmngr gnupg2
Импортирование GPG-ключа MongoDB
Сначала нам нужно импортировать открытый ключ GPG MongDB, как показано ниже:
wget -q0 - https://pgp.mongodb.com/server-8.0.asc | sudo apt-key add -
Результат выполненной команды должен быть «ОК».
Добавление репозитория MongoDB.
Пакеты MongoDB недоступны для установки напрямую из базового репозитория Debian и нам необходимо добавить официальный, предложенный разработчиками этой NoSQL базы данных:
echo "deb http://repo.mongodb.org/apt/debian bookworm/mongodb-org/8.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
Обновите репозиторий:
sudo apt update
Установка mongodb
Теперь мы можем установить MongoDB с помощью следующей команды:
sudo apt-get install -y mongodb-org
После установки служба MongoDB не запускается автоматически, поэтому ее необходимо запустить вручную:
sudo systemctl start mongod
Убедитесь, что MongoDB запустилась без ошибок:
sudo systemctl status mongod
Чтобы проверить установленную версию MongoDB можно использовать следующую команду:
sudo mongod --verion
Ну и соответственно добавим службу в автозагрузку, чтобы она автоматически запускалась при перезагрузке
systemctl enable mongod
Если вам необходимо, вы можете остановить сервис следующей командой:
systemctl stop mongod
Конфигурация mongod
По умолчанию, файл конфигурации MongoDB находится по следующему пути «/etc/mongod.conf».
Включение аутентификации по паролю
Чтобы включить аутентификацию по паролю, откройте файл конфигурации:
sudo nano /etc/mongod.conf
Найдите строку #security и раскомментируйте ее (уберите #) и добавьте «authorization: enabled»:
security
authorization: enabled
После этого перезапустите службу mongod, чтобы изменения вступили в силу:
sudo systemctl restart mongod
Включение удаленного доступа
Чтобы включить удаленный доступ к вашей базе данных MongoDB, вам необходимо отредактировать файл конфигурации «/etc/mongod.conf».
sudo nano /etc/mongod.conf
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1,IP_удаленного_сервера
После добавления IP адресса удаленного сервера, с которого вы хотите разрешить доступ, перезапустите службу:
sudo systemctl restart mongod
Вам также необходимо разрешить на брандмауэре доверенные удаленные IP-адреса, еслb брандмауэр у вас включен:
sudo ufw allow from your-server-ip to any port 27017
Создание административной учетной записи.
Если вы включили аутентификацию MongoDB, вам необходимо создать пользователя с правами администратора, который сможет получать доступ к БД MongoDB и управлять ей.
Чтобы получить доступ к оболочке MongoDB, запустите команду mongosh на терминале:
mongosh
Подключитесь к базе данных администратора:
use admin
Создаем пользователя-администратора, который будет использоваться для управления MongoDB:
db.createUser(
... {
... user: "admin",
... pwd: "SuperPass",
... roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
... }
... )
Выходим из оболочки mongo
exit
Попробуйте подключиться к MongoDB, используя ранее созданного пользователя администратора:
sudo mongosh -u admin -p --authenticationDatabase admin
У вас должно появиться поле для ввода пароля.
Вы можете подключиться, используя команду без аргументов. Но, если вы захотите посмотреть имеющиеся базы, то вы получите следующую ошибку:
show dbs
MongoServerError[Unauthorized]: Command listDatabases requires authentication
Удаление MongoDB
Если вы хотите полностью удалить MongoDB и связанные с ним зависимости, выполните следующую команду:
sudo apt purge --autoremove -y mongodb-org
Вы также можете удалить логи, данные и другие связанные каталоги и файлы с MongoDB:
sudo rm -rf /var/log/mongodb
sudo rm -rf /var/lib/mongodb
sudo rm -rf ~/.mongodb
sudo rm -rf ~/.dbshell
sudo rm -rf ~/.mongorc.js
Заключение
Вот и все. Мы успешно установили MongoDB в Debian.
Если у вас есть какие-либо вопросы, пожалуйста, оставьте комментарий ниже.
Was this helpful?
1 / 0