使用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>
登录成功!!!!
以上所述就是本文的全部内容了,希望能够对大家理解Mongo数据库有所帮助。
请您花一点时间将文章分享给您的朋友或者留下评论。我们将会由衷感谢您的支持!