MongoDB – это база данных NoSQL, которая хранит данные в гибком, ориентированном на документы формате. Это отличает ее от традиционных реляционных баз данных, таких как MySQL или PostgreSQL. Это мощная, масштабируемая и гибкая база данных, обычно используемая в приложениях, которым необходимо управлять большими объемами разнообразных данных. В этой статье мы расскажем вам, как установить MongoDB на Ubuntu 24.04, управлять ее службами и разрешить удаленные подключения.
Шаг 1. Обновление системы
Прежде чем приступить к установке MongoDB, рекомендуется обновить системные пакеты до последних версий. Для этого выполните приведенную ниже команду:
apt update -y && apt upgrade -y
Установите gnupg
и curl
, если они еще не установлены:
apt-get install gnupg curl -y
Шаг 2. Добавьте ключ и репозиторий
В этой статье мы будем устанавливать последнюю версию MongoDB 8.0 из официального репозитория MongoDB. Поэтому для этого нам нужно будет создать репозиторий MongoDB.
Прежде чем добавить репозиторий, нам нужно добавить GPG-ключ с помощью следующей команды:
curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \ gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \ --dearmor
Затем добавьте репозиторий MongoDB:
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
Как только это будет сделано, обновите систему:
apt update -y && apt upgrade -y
Шаг 3. Установите MongoDB на Ubuntu 24.04
Теперь мы готовы приступить к установке последней версии MongoDB, просто выполнив следующую команду на сервере.
apt install mongodb-org -y
После этого запустите и включите службу MongoDB:
systemctl start mongod && systemctl enable mongod
Чтобы проверить состояние MongoDB, выполните приведенную ниже команду:
systemctl status mongod
Вы должны получить следующий вывод:
root@host:~# systemctl status mongod ● mongod.service - MongoDB Database Server Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; preset: enabled) Active: active (running) Docs: https://docs.mongodb.org/manual Main PID: 26761 (mongod) Memory: 86.8M (peak: 87.0M) CPU: 1.074s CGroup: /system.slice/mongod.service └─26761 /usr/bin/mongod --config /etc/mongod.conf
После завершения установки проверьте версию установленной MongoDB:
mongod -version
Выходные данные:
db version v8.0.4 Build Info: { "version": "8.0.4", "gitVersion": "bc35ab4305d9920d9d0491c1c9ef9b72383d31f9", "openSSLVersion": "OpenSSL 3.0.13 30 Jan 2024", "modules": [], "allocator": "tcmalloc-google", "environment": { "distmod": "ubuntu2404", "distarch": "x86_64", "target_arch": "x86_64"
Шаг 4. Настройка имени пользователя администратора MongoDB
Чтобы настроить имя пользователя и пароль администратора MongoDB, нам нужно открыть оболочку MongoDB и ввести следующее:
mongosh
В оболочке Mongo введите эту команду, чтобы переключиться на базу данных администратора:
> use admin
Теперь создадим имя пользователя администратора и зададим пароль для него:
> db.createUser({user:"admin", pwd:"T7nm8Jfr6BnJ", roles:[{role:"root", db:"admin"}]})
Введите эту команду в оболочку, чтобы выйти из нее:
> exit
Шаг 5. Включите аутентификацию MongoDB
Чтобы включить аутентификацию по паролю, нам нужно отредактировать файл конфигурации MongoDB.
По умолчанию файл конфигурации находится по адресу /etc/mongod.conf
. Откройте этот файл:
nano /etc/mongod.conf
Прокрутите вниз и найдите раздел security. Откомментируйте его и добавьте авторизацию:
security: authorization: enabled
Чтобы применить изменения, перезапустите службу MongoDB.
systemctl restart mongod
Теперь, если вы попытаетесь подключиться к MongoDB, набрав mongosh без каких-либо аргументов. Вы получите сообщение о том, что требуется аутентификация.
test> show dbs MongoServerError[Unauthorized]: Command listDatabases requires authentication
Чтобы пройти аутентификацию, войдите в систему под административным пользователем, выполнив следующую команду:
mongosh -u admin -p --authenticationDatabase admin
Вам будет предложено ввести пароль. Введите пароль, заданный выше.
Теперь только административный пользователь может просматривать, создавать и изменять данные в базе данных.
Шаг 6. Настройте MongoDB для удаленного доступа
По умолчанию MongoDB прослушивает соединения на порту 27017 только на localhost (IP 127.0.0.1).
Чтобы разрешить удаленное подключение к MongoDB, необходимо добавить IP-адрес вашего сервера в файл конфигурации MongoDB.
nano /etc/mongod.conf
Найдите раздел сетевые интерфейсы и добавьте IP-адрес вашего сервера:
bind_ip = 127.0.0.1, your_server_ip
После сохранения изменений в конфигурационном файле MongoDB нам нужно перезапустить службу MongoDB следующей командой, чтобы изменения вступили в силу:
systemctl restart mongod
Вы можете войти в систему удаленно с помощью следующей команды:
mongosh "mongodb://admin@your_server_ip:27017"
Оболочка автоматически запрашивает пароль пользователя admin.
Шаг 7: Удаление MongoDB
Если по какой-то причине вам не нравится MongoDB и вам нужно удалить ее из системы, вы можете выполнить следующие команды:
sudo service mongod stop sudo apt purge mongodb-org* sudo rm -r /var/log/mongodb sudo rm -r /var/lib/mongodb
Поздравляем! Вы успешно установили MongoDB на Ubuntu 24.04.
Комментарии (0)