Сначала обновите список пакетов, чтобы иметь самую последнюю версию списков репозитория:
$ sudo apt update
Теперь установите сам пакет MongoDB:
$ sudo apt install -y mongodb
Эта команда устанавливает несколько пакетов, содержащих последнюю стабильную версию MongoDB, а также полезные инструменты управления для сервера MongoDB. Сервер базы данных автоматически запускается после установки.
Verfiy, если сервер работает нормально:
$ sudo systemctl status mongodb
Выходные данные должны быть:
Output
● mongodb.service - An object/document-oriented database
Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2018-05-26 07:48:04 UTC; 2min 17s ago
Docs: man:mongod(1)
Main PID: 2312 (mongod)
Tasks: 23 (limit: 1153)
CGroup: /system.slice/mongodb.service
└─2312 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config /etc/mongodb.conf
Согласно systemd , сервер MongoDB запущен и работает.
Проверьте это, подключившись к серверу базы данных и выполнив диагностическую команду:
$ mongo --eval 'db.runCommand({ connectionStatus: 1 })'
Желаемый результат будет:
Output
MongoDB shell version v3.6.3
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.3
{
"authInfo" : {
"authenticatedUsers" : [ ],
"authenticatedUserRoles" : [ ]
},
"ok" : 1
}
Если вы собираетесь использовать сервер MongoDB только локально с приложениями, работающими на одном сервере, это рекомендуемый и безопасный параметр. Однако, если вы хотите иметь возможность подключиться к серверу MongoDB из Интернета, вы должны разрешить входящие подключения в UFW.
Чтобы разрешить доступ к MongoDB через порт по умолчанию 27017 отовсюду, вы можете использовать sudo ufw allow 27017. Однако включение доступа в Интернет к серверу MongoDB при установке по умолчанию дает любому неограниченный доступ к серверу базы данных и его данным.
$ sudo ufw allow from your_other_server_ip/32 to any port 27017
Вы можете проверить состояние брандмауэра:
$ sudo ufw status
Вывод:
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
27017 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
27017 (v6) ALLOW Anywhere (v6)
Даже если порт открыт, MongoDB в настоящее время прослушивает только локальный адрес 127.0.0.1. Чтобы разрешить удаленные подключения, добавьте общедоступный IP-адрес вашего сервера в файл mongod.conf.
Открыть файл конфигурации MongoDB
$ sudo nano /etc/mongodb.conf
Добавьте IP-адрес вашего сервера к значению bindIP:
...
logappend=true
bind_ip = 127.0.0.1,your_server_ip
#port = 27017
...
Обязательно ставьте запятую между существующим IP-адресом и тем, который вы добавили.
Сохраните файл, выйдите из редактора и перезапустите MongoDB:
$ sudo systemctl restart mongodb
Проверьте это для графического интерфейса.
Ваш сервер MongoDB будет запущен в кратчайшие сроки.