我正在尝试使用pymongo从Python创建数据库用户。但我不断收到pymongo.errors.OperationFailure:CMD_NOT_ALLOWED:createUser错误
client = MongoClient("mongodb+srv://username:password@mycluster-mogiz.mongodb.net/admin")
db = client["testDB"]
db.command("createUser", "user", pwd="password")
我错过了什么吗?谢谢。
注意:我的数据库位于Mongo Atlas上,不知道这是否有任何改变。
答案 0 :(得分:0)
更新的答案:
试试这个。
client.testDB.add_user('user', 'password', roles=[{
'role':'root',
'db':'testDB',
}])
答案 1 :(得分:0)
我向Atlas客户支持人员提出了这个问题,他们给了我这个答案,希望它可以帮助其他尝试相同操作的人。简而言之,您无法使用pymongo将用户添加到Atlas,这就是为什么它会不断提示错误。
你好, 只有通过以下方式创建MongoDB用户,才能完成MongoDB Atlas中的用户管理。 通过Web UI或 与API Atlas的所有MongoDB用户都与admin数据库关联;即他们的身份验证数据库是admin。身份验证数据库无法确定用户的角色。 请注意,管理数据库仅用于身份验证,并不用于保存客户数据。