mongdb 4.x admin密码忘记,如何 重建admin用户
在mongo db中,或mongo db cluser中,如果admin密码忘记了,必须按下面的步骤来做。
思路为注释掉security认证部分,重启mongo server, 重建admin用户,再打开security,重启mongo server,就OK了
在MongoDB 4.x 复制集 replica set (即master 和 slave)架构中, 用下面的步骤即可完成。
在主和从mongo DB servers上,执行
1) vi /etc/mongod.conf
注释下面的内容
#security:
# clusterAuthMode: keyFile
# keyFile: /data/mongodb/key/repl_set.key
# authorization: enabled
然后重新启动 mongodb servers
2) systemctl restart mongod
在主 mongo DB server上执行
3) 连接到 mongo db primary (master)
mongo --host <master MongoDB IP>
MongoDB shell version v4.0.3
connecting to: mongodb://10.80.2.232:27017/
Implicit session: session { "id" : UUID("08e62bd1-15e3-4230-bd70-4a1bf2808478") }
MongoDB server version: 4.0.3
bpmRepSet:PRIMARY>
4) 执行下面的操作去重新建立admin用户
use admin
db.system.users.find()
db.dropUser("admin")
db.system.users.remove({user:"admin"})
db.createUser({user:"admin",pwd:"irootech123",roles:["readWrite"]})
db.grantRolesToUser("admin",[{ role: "clusterAdmin", db: "admin" }]);
db.grantRolesToUser("admin",[{ role: "userAdminAnyDatabase", db: "admin" }]);
db.grantRolesToUser("admin",[{ role: "root", db: "admin" }]);
在主和从 mongo DB servers上,执行
5) vi /etc/mongod.conf
//打开下面的内容
security:
clusterAuthMode: keyFile
keyFile: /data/mongodb/key/repl_set.key
authorization: enabled
然后重新启动 mongodb servers
6) systemctl restart mongod
在 主 mongoDB server上, 执行
7) 连接到 mongo db primary (master)上
mongo --host <master MongoDB IP>
> use admin
> db.auth("admin","irootech123")
如果允许slave 读操作,则在slave上执行 rs.slaveOk(); 就OK
这样,整个恢复工作完成
————————————————
版权声明:本文为CSDN博主「大树叶」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/bigtree_3721/article/details/85344950
mongdb 4.x admin密码忘记,如何 重建admin用户的更多相关文章
- django的admin密码忘记了怎么办?一分钟解决!!
django-admin确实是在实际开发中很方便,然后项目开发一段时间放到一边,等你再去玩你当初的项目的时候,可能抱歉你的admin密码忘记了,其实解决办法有很多种,我直说最快的一种,直接重新建立一个 ...
- 用友软件系统管理员账号admin密码忘记了,如何解决?
1.打开数据库. 2.点开 数据库-UFSystem. 3.找到dbo.UA_user表,鼠标右键,点打开表. 4.打开后,找到admin,cPassword列即可找到系统管理员密码.
- Jenkins 忘记admin密码拯救方法
突然有一日发现自己忘记了jenkins的管理员密码,因为我一直登录的是另外一个非管理员账户.如果出现必须要使用管理员账户操作的,比如用户管理那里的,必须要管理员账号吧,这就尴尬了. 很方的我打开安装j ...
- Linux监控平台介绍、zabbix监控介绍、安装zabbix、忘记Admin密码如何做
7月6日任务 19.1 Linux监控平台介绍19.2 zabbix监控介绍19.3/19.4/19.5 安装zabbix19.6 忘记Admin密码如何做 19.1 Linux监控平台介绍 一般大公 ...
- jenkins忘记admin密码的处理方法
如果忘记admin的登录密码,可按如下方法处理 # 编辑config.xml文件,替换passwordHash行的内容# vim /var/lib/jenkins/users/admin_167938 ...
- Nexus3.X忘记admin密码找回
一.问题背景 nexus3 这种东西,传完一次,很少动了,很容易忘记密码,不要急有方法找回. 官方网站关于解决该问题的方法: https://support.sonatype.com/hc/en-us ...
- 【Jenkins】忘记admin密码,可以用此方法帮你解决
突然有一日发现自己忘记了jenkins的管理员密码,因为我一直登录的是另外一个非管理员账户.如果出现必须要使用管理员账户操作的,比如用户管理那里的,必须要管理员账号吧,这就尴尬了. 很方的我打开安装j ...
- Jenkins忘记admin密码补救措施
遇到将Jenkins登录名密码忘记的情况,下面的方式可以重置密码. 进入C:\Program Files (x86)\Jenkins\users 目录可以看到admin开头的文件夹,里面有个confi ...
- Jenkins忘记 admin 密码
进入 jenkins home(我的是/var/jenkins_home)路径下的users 文件夹 cd /var/jenkins_home/users sudo vim admin/config. ...
随机推荐
- 2.1 MySQL基础使用
本文是课上资料的总结非原创没有转载地址 目录 引言 为什么需要数据库? 数据库和应用程序的关系 MySQL基础使用 一.数据库简介 1.1 简介 1.2 常见数据库管理系统 1.3 MySQL卸载 1 ...
- shell脚本添加脚本执行时间和当前运行次数current running time
#!/bin/bash ############################ #Author:Bing #Create time:3/31/2017 ####################### ...
- 【剑指Offer面试编程题】题目1506:求1+2+3+...+n--九度OJ
题目描述: 求1+2+3+...+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字及条件判断语句(A?B:C). 输入: 输入可能包含多个测试样例. 对于每个 ...
- 100个iOS开发/设计面试题汇总,你将如何作答?
原文: http://www.csdn.net/article/2015-01-19/2823604-ios-interview-questions 常见问题 你昨天/这周学习了什么? 你为什么热衷于 ...
- Navicat连接mysql时候出现1251错误代码
出现1251错误代码 是因为mysql8.0的密码加密方式与之前5.0的不同 如果是字母式的密码 比如root 可能会出现这种情况 1.先通过命令行进入mysql的root账户 Enter passw ...
- springmvc面试问题
1.讲下SpringMvc和Struts1,Struts2的比较的优势 性能上Struts1>SpringMvc>Struts2 开发速度上SpringMvc和Struts2差不多,比St ...
- Java中使用JSONTokener判断接口返回字符串是JSONObject还是JSONArray
今天在接口对接中,遇到一个问题,对方接口返回的JSONString,类型不确定,所以需要先做判断再进行处理.查阅资料后使用JSONTokener可进行处理,特此记录. String ret = ord ...
- XML规范化(DTD)
无意义的XML 之前说过因为xml没有预设的标签,所以说你怎麽写他一般都不会报错. 所以需要对xml的书写格式进行一些限制,这就引入了DTD 下面的这个xml你可以给book添加各种属性还不会报错,但 ...
- JS 循环赋值
var x_world_map_tiles = 100; var y_world_map_tiles = 100; var world_map_array = []; for (i=0; i<= ...
- 144、Java链表之定义一个Node类并输出
01.代码如下: package TIANPAN; class Node { // 每一个链表实际上就是由多个节点组成的 private String data; // 要保存的数据 private ...