zoukankan      html  css  js  c++  java
  • MongoDB 副本集删除超级用户后恢复

    背景:
    MongoDB 副本集admin(管理员)创建时,赋予了userAdminAnyDatabase权限,导致通过admin用户备份时,无权限,需要赋予root权限。
    因此将admin用户删除后,无法再次创建admin权限,因此需要将副本集节点修改成单节点模式启动,创建admin用户后,再以副本集启动,加入副本集。
    注意:完全可以先创建其他名字的管理员账号后再删除admin。

    修改 MongoDB 副本集配置文件,将security和replication全部注释掉,单节点启动:(先修改两个slave节点,最后再修改主节点)

    systemLog:
      destination: file
      logAppend: true
      path: /data/mongodb/27018/log/27018.log
    storage:
      dbPath: /data/mongodb/27018/data
      journal:
        enabled: true
      directoryPerDB: true
      engine: wiredTiger
      wiredTiger:
        engineConfig:
          cacheSizeGB: 20
          directoryForIndexes: true
        collectionConfig:
          blockCompressor: snappy
    processManagement:
      fork: true
      pidFilePath: /data/mongodb/27018/pid/mongodb_27018.pid
    net:
      bindIp: 0.0.0.0
      port: 27018
    operationProfiling:
      mode: all
      slowOpThresholdMs: 200
      rateLimit: 1000
    #security:
    # authorization: enabled
    # clusterAuthMode: keyFile
    # keyFile: /data/mongodb/27018/keys/keyfile
    #replication:
    #  replSetName: hankyoon
    #  oplogSizeMB: 4096

    登陆单节点模式,创建管理员账号:

    # mongo --port 27018
    > use admin
    > db.auth('admin','hankyoon7777') Successfully added user: { "user" : "admin", "roles" : [ { "role" : "root", "db" : "admin" } ] }

    修改完成后,通过rs.status()查看副本集状态,以及请研发同学配合验证一下业务运行情况

  • 相关阅读:
    SQL 笔记汇总
    SQL 备份数据 脚本 -添加到作业 步骤里面 可删除历史天文件
    SQL 事物
    MS-SQL2005 执行DOS命令
    笔记 hosts文件修改 网站发布二级目录 vs2008,vs2010 css验证
    自定义日期控件
    jQuery CSS3 照片墙
    CSS3 照片墙
    jquery.cookie.js
    CSS jQuery 图片全屏切换
  • 原文地址:https://www.cnblogs.com/hankyoon/p/15685865.html
Copyright © 2011-2022 走看看