Запуск СУБД MongoDB на FreeBSD

Краткая инструкция по установке и первоначальной настройке системы управления базами данных MongoDB на ОС FreeBSD 13.0.

В первую очередь установим MongoDB из пакетов:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# pkg install mongodb42
# pkg install mongodb42
# pkg install mongodb42

Затем открываем файл /usr/local/etc/mongod.conf

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# vi /usr/local/etc/mongod.conf
# vi /usr/local/etc/mongod.conf
# vi /usr/local/etc/mongod.conf

находим строчку

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
bindIp: 127.0.0.1
bindIp: 127.0.0.1
bindIp: 127.0.0.1

закомментируем её и ниже пропишем так:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
bindIp: 0.0.0.0
bindIp: 0.0.0.0
bindIp: 0.0.0.0

а также раскомментируем параметр security и включим авторизацию:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
security:
authorization: enabled
security: authorization: enabled
security:
  authorization: enabled

Далее откроем файл /etc/rc.conf

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# vi /etc/rc.conf
# vi /etc/rc.conf
# vi /etc/rc.conf

и включим службу mongod в автозагрузку

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
mongod_enable="YES"
mongod_enable="YES"
mongod_enable="YES"

После этого запустим службу mongod

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# service mongod start
# service mongod start
# service mongod start

Проверим локальное подключение к СУБД:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# mongo --eval 'db.runCommand({ connectionStatus: 1 })'
# mongo --eval 'db.runCommand({ connectionStatus: 1 })'
# mongo --eval 'db.runCommand({ connectionStatus: 1 })'

в ответе получим небольшой JSON-массив, в котором значение параметра ok должно быть равно 1. Это значит, что MongoDB подключена и готова к использованию.

Затем запустим оболочку mongo

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# mongo
# mongo
# mongo

переходим к базе данных admin

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
use admin
use admin
use admin

и выполним запрос на создание аккаунт админа dbuser с паролем 147258

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
db.createUser(
{
user: "dbuser",
pwd: "147258",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
db.createUser( { user: "dbuser", pwd: "147258", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] } )
db.createUser(
  {
    user: "dbuser", 
    pwd: "147258", 
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)

для выхода из оболочки mongo ввводим команду

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
quit()
quit()
quit()

Теперь проверим подключение пользователя dbuser

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# mongo -u dbuser -p --authenticationDatabase admin
# mongo -u dbuser -p --authenticationDatabase admin
# mongo -u dbuser -p --authenticationDatabase admin

вводим пароль 147258

просмотрим список пользователей БД admin

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
use admin
show users
use admin show users
use admin
show users

и выходим из оболочки mongo

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
quit()
quit()
quit()

После этого создадим пользователя dbuser с помощью saslpasswd2

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# saslpasswd2 -c dbuser
# saslpasswd2 -c dbuser
# saslpasswd2 -c dbuser

вводим пароль.

Теперь у нас всё готово для удалённого подключения.

Ввод данных аккаунта для подключения
Интерфейс управления базами данных

Все базы данных находятся в каталоге /var/db/mongodb/

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *