(1) mongodb下载地址:
https://www.mongodb.org/downloads
下载后文件为:
mongodb-win32-x86_64-2008plus-ssl-3.1.6-signed.msi
下载后安装很简单,
安装完后,在bin目录下建立daba\db,data\log文件夹。
(2) 配置权限过程:
Mongodb3.0.3版本加入了SCRAM-SHA-1校验方式,需要第三方工具配合进行验证,否则,当设置授权登陆后会出现如下问题:
{ authenticate: 1, nonce: "xxx", user:"myuser", key: "xxx" }
下面给出具体解决办法:
首先关闭认证,修改system.version文档里面的authSchema版本为3,初始安装时候应该是5,命令行如下:
> use admin
switched to db admin
> var schema = db.system.version.findOne({"_id": "authSchema"})
> schema.currentVersion = 3
3
> db.system.version.save(schema)
WriteResult({ "nMatched" : 1, "nUpserted" : 0,"nModified" : 1 })
如果之前admin内已经增加了账号,需要删除,重新增加账号。
增加管理员账号过程如下:
use admin
db.dropUser("jiayp ")
db.createUser(
{
user: "jiayp",
pwd:"12345678",
roles: [ { role:"userAdminAnyDatabase", db: "admin" } ]
}
)
增加其他数据库账号过程如下
> use mydb
switched to db mydb
> db.dropUser("abc")
true
>db.createUser({user:abc,pwd:'123456',roles:[{role:'dbOwner',db:mydb }]})
设置好以后,在启动参数处增加 --auth 重新启动Mongodb服务就可以了。
再次登陆,jiayp账号只可以查看用户信息,其他查看数据集合功能都没有了,这是正常的。用abc账号登陆可以正常查看mydb下的数据信息。
参考地址:
http://ju.outofmemory.cn/entry/176109
http://ibruce.info/2015/03/03/mongodb3-auth/