mongo集群误删admin,如何操作
Posted redback
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongo集群误删admin,如何操作相关的知识,希望对你有一定的参考价值。
在一次操作时,误删了admin库,所有的认证都实现不了,心慌慌,在想 是不是 把他库都给删了,然后跑路^_^, 其实不用这样样,哈哈
MOngoDB 集群 肯定是开启了集群认证的,所以把认证关闭, 然后新建admin,新建用户,就可以了,前提你知道每个库的 用户不然只能 新建用户了....
MongoDB集群认证,有下面三步:
(1)生成密钥文件,复制到其他两台服务器上.并修改权限
openssl rand -base64 741 > /usr/replSet_key
chmod 700 /usr/replSet_key
在一台生成keyfile,将密码文件scp到其他两台服务器上。
(2)创建用户,在集群的一台服务器上创建会同步到另两个服务器上,
举两个创建用户例子:
db.createUser({user:"root", pwd:"123456",roles:[{role:"root",db:"admin"}]});
db.createUser({user:‘yunwei‘,pwd:‘123456‘, roles:[{role:‘readWriteAnyDatabase‘, db:‘admin‘}]});
#创建管理用户
db.system.users.find() //查看创建的用户
db.auth("root","123456")//授权
#创建testdb读写用户(需要切换到对应的数据库下给它创建用户)
use testdb
db.createUser({user:‘dev‘,pwd:‘123456‘, roles:[{role:‘readWrite‘, db:‘testdb‘‘}]});
(3)打开配置文件的注释,开启认证
修改所有下面的配置文件,
config.conf shard1.conf shard2.conf shard3.conf mongos.conf (keyFile=/usr 这个只需要配置keyFile的位置)
auth=true
keyFile=你第一步生成的文件的位置
重启,集群认证就可以生效!!!
误删admin后,只需要把第三部的配置文件中auth= false即可,
然后重启mongo集群,新建用户后,重新打开认证,即可以恢复! 修改文件必须重启,不然配置文件不生效!
希望可以帮到需要的小伙伴~~~~~~~~~~~~~~~~~
以上是关于mongo集群误删admin,如何操作的主要内容,如果未能解决你的问题,请参考以下文章