如何在添加root用户后在MongoDB中使用Auth

时间:2015-04-08 13:33:44

标签: mongodb mongodb-query remote-access remote-server

我需要远程连接到我的MongoDB。因此,我已在bind_ip中对mongod.conf行进行了注释,并在auth=true处设置了use admin。现在我能够远程连接。

然后我在运行mongodb的机器上键入了以下内容:

  1. db.addUser("myadmin", "mypw")
  2. not authorized on admin to execute command
  3. 创建成功但现在当我尝试远程连接或甚至在本地计算机上连接时,我尝试执行任何事情:mongo -u myadmin -p mypw

    即使我尝试连接如下:MongoDB shell version: 2.6.9 connecting to: test 2015-04-08T15:25:53.425+0200 Error: 18 { ok: 0.0, errmsg: "auth failed", code: 18 } at src/mongo/shell/db.js:1260 exception: login failed (本地)

    我收到以下错误:

    test

    也许是因为他试图连接到mongo --host myurl -u myadmin-p mypw db?如何指定哪个数据库。远程它不能与2015-04-08T14:31:00.373+0200 E QUERY Error: 18 { ok: 0.0, errmsg: "auth failed", code: 18 } at DB._authOrThrow (src/mongo/shell/db.js:1236:32) at (auth):6:8 at (auth):7:2 at src/mongo/shell/db.js:1236 exception: login failed一起使用 出现以下错误:

    {{1}}

1 个答案:

答案 0 :(得分:7)

请在连接到mongo shell时尝试使用--authenticationDatabase,如下所示:

mongo -u myadmin -p mypw --authenticationDatabase admin