Запустите MongoDB 3.6 как сервис brew с аутентификацией - PullRequest
0 голосов
/ 27 апреля 2018

MongoDB v3.6.4 : после перехода с монго 3,4 на 3,6

Из оболочки я могу запустить БД и подключиться к ней с аутентификацией.

mongod --auth --port 27017 --dbpath /data/db

Однако, когда я запускаю mongodb с brew, аутентификация не работает и аутентификация вручную также невозможна.

~ ?  $ mongo
MongoDB shell version v3.6.4
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.4
> use admin
switched to db admin
> db.stats()
{
    "ok" : 0,
    "errmsg" : "not authorized on admin to execute command { dbstats: 1.0, scale: undefined, $db: \"admin\" }",
    "code" : 13,
    "codeName" : "Unauthorized"
}
> db.auth('superAdmin', 'password')
Error: Authentication failed.
0

Как можно запустить mongodb как сервис с аутентификацией?

Можно отказаться от проверки подлинности, установив отключенную авторизацию в файле /usr/local/etc/mongod.conf, однако было бы неплохо запустить службу с необходимыми привилегиями:

security:
  authorization: disabled

Готово, проверено:

  1. Предлагаемый здесь ответ также не является правильным - это недопустимая команда brew services start mongodb --auth --port 27017 --dbpath /usr/local/var/mongodb
...