当前位置:  开发笔记 > 编程语言 > 正文

如何在2.6中向Mongo添加管理员用户?

如何解决《如何在2.6中向Mongo添加管理员用户?》经验,为你挑选了1个好方法。

我从2.4升级到2.6并且身份验证失败了. 本教程看起来非常简单,但我一直被锁在自己的数据库之外.我的情况非常简单,我有一个Mongo服务器,需要一个用户/密码组合才能连接.

首先,我通过提到的localhost异常进行连接.然后我按照建议创建管理员用户:

use admin
db.createUser(
  {
    user: "myadmin",
    pwd: "mysecret",
    roles:
    [
      {
        role: "userAdminAnyDatabase",
        db: "admin"
      }
    ]
  }
)

现在是时候添加新用户,以便健全地检查自己,我注销了shell.现在,当我键入"mongo"时,它失败了.以前工作但是没问题,它没有看到用户名密码,我猜不再有localhost异常,所以我按照这里列出的说明操作:

mongo --port 27017 -u myadmin -p mysecret --authenticationDatabase admin

我得到:

MongoDB shell version: 2.6.0
connecting to: 127.0.0.1:27017/test
Error while trying to show server startup warnings: not authorized on admin to execute command { getLog: "startupWarnings" }
>

任何想法如何:

    设置Mongo 2.6所以我可以轻松地进出shell来管理数据库(我认为这是"系统用户管理员")

    从远程客户端启用用户连接?(只是mongo方面,iptables无需帮助......)

谢谢!



1> Tony..:

显然"系统用户管理员"是不够的.创建root用户:

> db.createUser({user:"someadmin",pwd:"secret", roles:[{role:"root",db:"admin"}]})

然后添加您的数据库用户:

> use some_db
> db.createUser(
    {
      user: "mongouser",
      pwd: "someothersecret",
      roles: ["readWrite"]
    }
)

关于这个要点的更多细节.评论关于SO欢迎的要点和更好的答案 - 我不是系统管理员

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有