mongodb - 如何从 MongoDB 数据库中删除用户

标签 mongodb

我有一个数据库,我为其分配了一个我想立即删除的用户。

我的命令看起来像:

> show dbs
admin     0.000GB
users     0.000GB
local     0.000GB
> use admin
switched to db admin
> show users
{
    "_id" : "admin.root",
    "user" : "root",
    "db" : "admin",
    "roles" : [
        {
            "role" : "readWriteAnyDatabase",
            "db" : "admin"
        },
        {
            "role" : "userAdminAnyDatabase",
            "db" : "admin"
        },
        {
            "role" : "dbAdminAnyDatabase",
            "db" : "admin"
        },
        {
            "role" : "clusterAdmin",
            "db" : "admin"
        }
    ]
}
{
    "_id" : "admin.myuser",
    "user" : "myuser",
    "db" : "admin",
    "roles" : [
        {
            "role" : "root",
            "db" : "admin"
        }
    ]
}

当我想删除用户 myuser 我正在使用:

> db.dropUser(myuser)
2016-02-11T14:13:21.107+0000 E QUERY    [thread1] ReferenceError: myuser is not defined :
@(shell):1:1

这是什么原因?如何从我的数据库中删除该用户?

最佳答案

db.dropUser() 方法接受用户名的字符串参数,在您的情况下它会抛出错误,因为参数无效。

尝试使用字符串:

> use admin
> db.dropUser("myuser")

或运行 dropUser 命令:

> use admin
> db.runCommand( { dropUser: "myuser" } )

关于mongodb - 如何从 MongoDB 数据库中删除用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35341670/

相关文章:

mongoDB 有没有办法让聚合 $gte 不显示错误数据

node.js - MongoDB 返回结果的关联数组

javascript - NodeJs Mongoose Promise then/catch

javascript - meteor Collection.insert() 不返回 Id

linux - 使用 $out 保存聚合结果,为什么这不起作用?

mongodb - 从处理程序中插入MongoDB文档

MongoDB 独立与副本集以及如何将数据从独立迁移到副本集

json - 如何使用 mongoose 和异步 waterfall 模型在 MongoDb 中存储数据

mongodb 3.4.3 Permission denied Wiredtiger_kv_engine.cpp 267 错误与 ubuntu 16

mongodb - 使用 mongo ObjectId 作为用户 ID 是不好的做法吗?