我已经添加了权限到我的MongoDB实例。我用以下命令
创建了一个用户db.createUser(
{ user: "cocodrile", pwd: "amazonas",
roles: [
{ role: "userAdminAnyDatabase", db: "admin"},
{ role: "dbOwner", db: "admin"},
{ role: "dbOwner", db: "brasil_database"},
{ role: "dbOwner", db: "usa_database"} ,
{ role: "dbOwner", db: "argentina_database"},
{ role: "dbOwner", db: "test"}] })
我想执行一个db.fsyncLock()它说:
db.fsyncLock()
{
"ok" : 0,
"errmsg" : "not authorized on admin to execute command { fsync: 1.0, lock: true }",
"code" : 13
}
我做错了什么?谢谢!
您错过了hostManager内置角色,该角色具有监视和管理服务器的权限,并执行一些集群作为一个整体的操作,如fsync。