我有生产环境,我的mongoDB启动并运行,DBA要求我们更改用于身份验证的密码。一种方法是使用新密码再次运行addUser命令,如change password
中所述> db.auth("app_user", "somepassword")
db.addUser("app_user", "new password")
这与添加新用户一样好。
我知道我必须按照in添加新用户后使用--auth选项重新启动mongod,但因为这是一个生产环境而我无法重启我的服务器。还有其他选择吗?或者如果我的方法是错误的,如何更改mongoDB中的密码
答案 0 :(得分:15)
对于v2.4
db.changeUserPassword("app_user", "new password")
https://groups.google.com/d/msg/mongodb-user/KkXbDCsCfOs/rk2_h-oSbAwJ https://jira.mongodb.org/browse/DOCS-1515
答案 1 :(得分:10)
MongoDB> 3.X
db.updateUser("root", {pwd: "NewRootAdmin" })
参考:https://docs.mongodb.com/manual/reference/method/db.updateUser/
答案 2 :(得分:1)
您链接到一个问题,询问有关向MongoDB添加身份验证的问题,其中包括使用选项--auth启动'mongod'。由于您已经使用--auth运行,因此在您的方案中不需要重新启动。
只需更改用户密码即可开始使用。
答案 3 :(得分:0)
从Mongodb 4.0开始,在更新用户密码时,必须使用db.updateUser()
,将passwordDigestor
密钥设置为“服务器”:
答案 4 :(得分:0)
如果您有旧密码并且想更改密码,请使用 mongo --username <USERNAME>
并使用 db.changeUserPassword("<USERNAME>", passwordPrompt())
。