mongoDB配置以及添加管理账号

配置

在mongodb的安装目录下创建data,在data目录下创建db,log两个文件夹,然后创建mongod.cfg文件
输入下列代码(记得把路径替换掉)

systemLog:
    destination: file
    path: c:\data\log\mongod.log
storage:
    dbPath: c:\data\db

然后执行命令(把路径替换掉)
"C:\mongodb\bin\mongod.exe" --config "C:\mongodb\mongod.cfg" --install

这样就在win下注册好mongo的服务了。(win7需要打一个补丁:https://support.microsoft.com/zh-cn/kb/2731284)

安全性:

创建用户

首先需要重新安装window服务(如果之前已经安装过,如果没有,把reinstall命令替换成install即可)
开启mongodb账号验证功能
\bin\mongod.exe --auth --config \mongod.cfg --reinstall
然后输入命令

mongo

use admin

db.createUser(
{
user: "root",
pwd: "123456",
roles: [ "root" ]
}
)

在某个数据库下创建一个用户

mongo
use test
db.createUser({user: "root", pwd: "123456", roles: ["dbAdmin"]})

在连接时加上用户名密码即可mongodb://root:123456@127.0.0.1:27017/test

mongodb 内置角色

Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限
posted @ 2016-09-07 18:07  hwencc  阅读(1059)  评论(0编辑  收藏  举报