1.添加超级管理员
use admin
db.createUser({
"user":"admin", -- 用户名
"pwd":"123456",
"roles": [{
role: "root", -- 角色
db:"admin" -- 所属数据库
}]
}) # 添加超级管理员
# 退出mogodb命令模式,到mongodb\bin目录下执行
# 使用用户名密码登录mongodb mongo 服务器地址:mongoDB端口/数据库名 -u 用户名 -p 密码
mongo localhost:27017/admin -u admin -p 123456
# 第二种登录方式
mongo
db.auth('admin','123456')
# 添加用户
db.createUser({
user: "zta_order",
pwd: "dfsfjsf_zta_order",
roles: [ { role: "readWrite", db: "zta_order" } ],
mechanisms : ["SCRAM-SHA-1"]
})
use zta_order; # zta_order 是数据库名
db.createUser({ user: "zta_order", pwd: "mm密码", roles: [{ role: "dbOwner", db: "zta_order" }]})
角色种类
超级用户角色: root
数据库用户角色: read、readWrite
数据库管理角色:dbAdmin、userAdmin
集群管理角色: clusterAdmin、clusterManager、clusterMonitor、hostManager
备份恢复角色:backup、restore
角色说明
root
: 只在admin数据库中可用。超级账号、超级权限
read
:允许用户读取指定数据库
readWrite
:允许用户读写指定数据库
use shop
for (var i = 0;i<10;i++){
db.goods.insert({"name":"name"+i,"price":i})
}
db.goods.find()
db.createUser({
"user":"shop1",
"pwd":"123456",
"roles":[{
role:"read", # 只能读
db:"shop"
}]
})
db.createUser({
"user":"shop2",
"pwd":"123456",
"roles":[{
role:"readWrite", # 可读写
db:"shop"
}]
})
use admin
db.system.users.find() # 查询所有账号
db.dropUser('zta_order') # 删除用户zta_order
# 客户端连接mongo
mongodb://用户名:密码@IP:端口/数据库