线上mongodb更新认证步骤

注意:

  • mongo版本:3.2
  • 原来认证方式为5,后来改成了3,这教程是从3改成5的
  • 其实都一样,原理就是修改认证方式,删除原来用户,再建新用户
  • admin用户可能要有__system权限,下面也有相关添加__system权限的命令

查看当前用户

use admin
db.system.users.find()

删除用户

db.system.users.remove({user:"appuser"})
db.system.users.remove({user:"readonly"})

更改认证方式

use admin
db.system.version.find()
db.system.version.update({'_id':'authSchema'},{$set:{'currentVersion':5}})
db.system.version.find()

注意:如果权限有问题

db.updateRole("admin",{ roles:[{ "role" : "__system", "db" : "admin" }]}})

新建用户

use semaphore
db.createUser({user:'appuser',pwd:'fWjmcIwU5Sx7MlhG',roles:['readWrite']})
use websocket1mindata
db.createUser({user:'appuser',pwd:'fWjmcIwU5Sx7MlhG',roles:['readWrite']})
db.createUser({user:'readonly',pwd:'5rbxsCHTloWV0i2D',roles:['read']})

修改配置文件,认证改为enable,重启mongo

/srv/mongodb/bin/mongod -f /data/config/mongodb/mongod.conf