Установка и настройка MongoDB на linux ubuntu 20.04
Подробное руководство по установке, настройке и оптимизации MongoDB для linux ubuntu 20.04
Введение
MongoDB — популярная документоориентированная NoSQL-база данных. В этом руководстве мы установим последнюю стабильную версию MongoDB Community Edition на Ubuntu 20.04, настроим безопасный доступ и проверим работоспособность системы.
Требования
Для выполнения установки потребуется:
- Ubuntu 20.04 LTS
- Пользователь с правами sudo
- Минимум 2 ГБ оперативной памяти
- 10 ГБ свободного места на диске
- Стабильное интернет-подключение
Установка
Полная установка MongoDB
Подготовка
Перед установкой обновите систему:
sudo apt update && sudo apt upgrade -y
Установите необходимые зависимости:
1sudo apt install -y gnupg curl wget
Процесс установки
- Импортируйте ключ GPG:
1wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
- Добавьте репозиторий:
1echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
- Установите MongoDB:
1sudo apt update 2sudo apt install -y mongodb-org
- Запустите службу:
1sudo systemctl start mongod 2sudo systemctl enable mongod
Проверьте статус службы:
1sudo systemctl status mongod
Настройка
Основные настройки в файле конфигурации /etc/mongod.conf
:
- Разрешите удаленные подключения (при необходимости):
1net: 2 port: 27017 3 bindIp: 0.0.0.0
- Включите аутентификацию:
1security: 2 authorization: enabled
- Создайте администратора БД:
1mongosh 2use admin 3db.createUser({ 4 user: "admin", 5 pwd: "securepassword", 6 roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] 7})
Перезапустите службу после изменений:
1sudo systemctl restart mongod
Типичные ошибки и их решения
Ошибка: Could not connect to server Решение: Проверьте статус службы и настройки брандмауэра:
sudo ufw allow 27017
Ошибка: Authentication failed Решение: Убедитесь в правильности данных пользователя и включенной аутентификации
Ошибка: Address already in use Решение: Найдите и завершите процесс, использующий порт 27017:
sudo lsof -i :27017
Заключение
Вы успешно установили и настроили MongoDB на Ubuntu 20.04. Для повышения безопасности:
- Регулярно обновляйте пакеты
- Настройте брандмауэр
- Используйте SSL-шифрование
- Регулярно создавайте резервные копии
Команды
Установка пакетов MongoDB
1sudo apt install -y mongodb-org
Запуск службы MongoDB
1sudo systemctl start mongod
Создание администратора БД
1mongosh --eval 'db.createUser({user: "admin", pwd: "password", roles: ["root"]})' admin
Решение проблем
Служба mongod не запускается
Проверьте журналы: sudo journalctl -u mongod -n 50
1sudo journalctl -u mongod
Ошибка E: Repository does not have a Release file
Проверьте правильность репозитория в /etc/apt/sources.list.d/mongodb-org-6.0.list
1cat /etc/apt/sources.list.d/mongodb-org-6.0.list