MongoDB2.6添加用户权限方法

Yourtion 创作于:2015-03-02     全文约 837 字, 预计阅读时间为 3 分钟

使用Mongodb数据库,需要为各个数据库增加用户权限,查了一下发现下面代码:

use test2
db.addUser( { user: "test",
              pwd: "admin",
              roles: [ "readWrite", "dbAdmin" ]
            } )

执行后发现:

$ mongo 192.168.1.111/test2 -u test -p admin
MyMongo:PRIMARY>

Error: 18 { ok: 0.0, errmsg: “auth failed”, code: 18 } at src/mongo/shell/db.js:228

检测版本发现

$mongo --help
MongoDB shell version: 2.4.9

我使用的Mongodb是2.6版本,但是Shell是2.4.9的,感觉是这出现了文问题,所以采用下面方案:

删除旧版本的Client

sudo apt-get remove mongodb-clients
sudo apt-get autoremove
sudo apt-get autoclean

安装新的Shell

sudo apt-get install mongodb-org-shell=2.6.1
$mongo --help
MongoDB shell version: 2.6.1

使用新的(Mongodb 2.6的代码)添加用户

use test2
db.createUser(
   {
     user: "test",
     pwd: "admin",
     roles:
       [
         { role: "readWrite", db: "test2" },
       ]
   }
)

$mongo 192.168.1.111/test2 -u test -p admin
MyMongo:PRIMARY>

登录成功!!!!

原文链接:https://blog.yourtion.com/mongodb-2-6-adduser.html