阅文时长 | | 1.07分钟 | 字数统计 | | 1730.4字符 |
主要内容 | | 1、问题切入 2、详细步骤 3、声明与参考资料 | ||
『MongoDB·Windows下管理员密码重置解决方案』 | |||
编写人 | | SCscHero | 编写时间 | | 2020/6/23 AM2:43 |
文章类型 | | 系列 | 完成度 | | 已完成 |
座右铭 | 每一个伟大的事业,都有一个微不足道的开始。 |
一、问题切入 完成度:100%
a) 问题发现
博主在之前学过一段时间的MongoDB。当时给管理员配置了密码。结果几个月后又来复盘时候发现密码忘记了。于是寻找密码重置的方法。网上流行一种说法,更改配置文件取消掉身份认证的项,重启服务。于是乎寻找配置文件,并没有找到配置的身份认证的项。于是乎博主认为上述说法是适用于Linux系统下的。下文是针对windows系统的更改密码处理方式(可能也适用于Linux)。
b) 环境说明
操作系统:Windows10 专业版 1909版本
软件说明:已安装MongoDB环境。及配置了身份验证服务。
c) 解决思路
- 首先,暂停MongoDB服务。
- 接着,删除MongoDB服务。
- 然后,重新安装MongoDB服务(默认是不带身份验证的)后启动服务。
- 再者,连接MongoDB服务,使用admin数据库,找到Users集合,使用内置方法更改密码或创建用户。
- 最后,卸载MongoDB服务,再重新安装带身份验证的MongoDB服务,使用设置好的用户名及密码访问。
详细步骤见下一章节。
二、详细步骤 完成度:100%
- 暂停MongoDB服务。
net stop mongodb
- 删除MongoDB服务。
sc delete MongoDB
若删除成功返回。
[SC] DeleteService 成功
- 然后,重新安装MongoDB服务(默认是不带身份验证的)后启动服务。有两种命令,选一种即可。一种是读取配置文件,一种是在命令中配置。
- 启动服务
net start mongodb
- 配置文件方式
mongod --config "MongoDB配置文件地址"--install
- 命令中配置方式
mongod --dbpath "MongoDB数据库文件地址" --logpath "MongoDB日志文件地址" --install
未返回报错则安装成功。
- 再者,连接MongoDB服务,使用admin数据库,找到Users集合,使用内置方法更改密码或创建用户。
- 直连数据库。
mongo
- 选中数据库。
use admin
- 查看数据库管理员命令
system.db.users.find().pretty()
- 更改密码命令。语法:dbchangeUserPassword("用户名","要修改的密码")
db.changeUserPassword("admin","SCscHero")
- 最后,卸载MongoDB服务,再重新安装带身份验证的MongoDB服务,使用设置好的用户名及密码访问。
卸载服务命令。
- 卸载MongoDB服务。
mongod --remove
- 返回如下内容则卸载成功。
2020-12-07T17:08:04.298+0800 I CONTROL [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none'
2020-12-07T17:08:04.301+0800 W ASIO [main] No TransportLayer configured during NetworkInterface startup
2020-12-07T17:08:04.302+0800 I CONTROL [main] Trying to remove Windows service 'MongoDB'
2020-12-07T17:08:04.589+0800 I CONTROL [main] Service MongoDB is currently running, stopping service
2020-12-07T17:08:04.590+0800 I CONTROL [main] Service 'MongoDB' stopped
2020-12-07T17:08:04.591+0800 I CONTROL [main] Service 'MongoDB' removed
- 使用任意一种方法安装带身份验证的服务。
- 配置文件方式
mongod --config "MongoDB配置文件地址"--install --auth
- 命令中配置方式
mongod --dbpath "MongoDB数据库文件地址" --logpath "MongoDB日志文件地址" --install --auth
- 安装好后,可以使用mongo命令连接数据库,在使用show dbs命令查看是否有显示来确定是否安装好了带身份验证的服务。使用设置好的用户名及密码访问。语法:mongo 地址:端口/数据库名称 -u 用户名 -p 密码
mongo 127.0.0.1:27097/admin -u admin -p admin888
- Over,完成。
三、声明与参考资料 完成度:100%
原创博文,未经许可请勿转载。
如有帮助,欢迎点赞、收藏、关注。如有问题,请评论留言!如需与博主联系的,直接博客私信SCscHero即可。