当我使用show dbs
命令时,我的mongo shell给了我这个错误。
未授权管理员执行命令
我尝试使用
创建用户db.createUser(
{
user: "siteUserAdmin",
pwd: "password",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
on https://docs.mongodb.com/v2.6/tutorial/add-user-administrator/
但它仍然给我同样的错误:
无法添加用户:管理员未授权执行命令。
我使用 Ubuntu 16.04 而 mongoDB 版本 3.4.9
答案 0 :(得分:2)
我认为您可以将该角色用作Ubuntu的root用户。请尝试以下查询。
use admin
db.createUser(
{
user: "admin",
pwd: "password",
roles: [ { role: "root", db: "admin" } ]
}
);
exit;
您也可以向用户提供读写权限
use admin
db.grantRolesToUser("admin",["readWrite"])
修改强>
由于上述方法无效,请尝试使用auth启动实例,如下所示
$ mongod --auth
use admin db.createUser( { user: "admin", pwd: "password", roles: [ { role: "root", db: "admin" } ] } ); exit;
现在授予权限
db.auth("admin", "password") db.grantRolesToUser("password", [ { role: "readWrite", db: "admin" } ])
现在查看show users