zoukankan      html  css  js  c++  java
  • 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集群,新建用户后,重新打开认证,即可以恢复! 修改文件必须重启,不然配置文件不生效!

    希望可以帮到需要的小伙伴~~~~~~~~~~~~~~~~~

  • 相关阅读:
    如何生成a1,a2,a3,a4这样的变量名
    Swiper说明及API手册说明
    Centos下搭建 tomcat https服务器详解(原创)
    IOS 2D游戏开发框架 SpriteKit-->续(创建敌对精灵)
    AFNetworking 3.1
    IOS 2D游戏开发框架 SpriteKit-->续(postion,锚点,游戏滚动场景)
    动态加载HTML后使用query修改标签样式
    objective-c IOS应用更新
    Objective-c 动画
    java servlet上传centos服务器
  • 原文地址:https://www.cnblogs.com/redBack/p/9259861.html
Copyright © 2011-2022 走看看