Я установил базу данных MongoDB с пользователем admin
, который имеет только права администратора, а не читать или записывать доступ к базам данных.
Теперь я хочу:
- Добавить новую базу данных,
- и добавьте нового пользователя в эту базу данных.
И: Мне нужно сделать это из командной строки. Поэтому я попробовал:
$ mongo admin -u admin -p admin --eval "db.addUser('dummyuser', 'dummysecret')"
(Обратите внимание, что, поскольку я все еще использую MongoDB 2.0, я использую старый формат db.addUser
.)
Это имело бы смысл, если бы я мог сказать, для какой базы данных должен быть этот пользователь. Но сейчас я борюсь. Как указать базу данных для этой команды? Если бы я был в интерактивной оболочке, я мог бы просто запустить
> use dummydb
но как это сделать из командной строки? Моя первая попытка состояла в том, чтобы объединить обе команды с помощью ;
, но это не сработало:
$ mongo admin -u admin -p admin --eval "use dummydb;db.addUser('dummyuser', 'dummysecret')"
просто дает мне синтаксическую ошибку.
Как я получу это правильно?