MongoServerError: Authentication failed.处理办法

1停止MongoDB服务:

bash 复制代码
systemctl stop mongod

2临时修改MongoDB配置,禁用认证:

bash 复制代码
vim /etc/mongdb.config
在配置文件中找到
security:
  authorization: disabled  # 临时关闭认证

3.重启MongoDB服务

bash 复制代码
# 重启MongoDB服务
sudo systemctl restart mongod

4.重新创建管理员用户:

bash 复制代码
mongosh --eval 'db.getSiblingDB("admin").createUser({user:"adminUser",pwd:"Admin@2025!#",roles:[{role:"userAdminAnyDatabase",db:"admin"},{role:"readWriteAnyDatabase",db:"admin"}]})'

5.创建远程访问用户:

bash 复制代码
mongosh --eval 'db.getSiblingDB("admin").createUser({user:"remoteUser",pwd:"Remote@2025!#",roles:[{role:"readWrite",db:"yourdb"}]})'

6.重新启用安全认证:

bash 复制代码
vim /etc/mongdb.config
在配置文件中找到
security:
  authorization: enabled  # 开启认证```
7.重启MongoDB服务以应用新配置:
```bash
systemctl restart mongod

8验证新密码:

bash 复制代码
mongosh --eval 'db.getSiblingDB("admin").auth({user:"adminUser",pwd:"Admin@2025!#"})'

连接方式:

bash 复制代码
   # 管理员连接(本地或远程)
   mongosh --host <服务器IP> --port 27017 -u adminUser -p Admin@2025!# --authenticationDatabase admin

   # 远程用户连接
   mongosh --host <服务器IP> --port 27017 -u remoteUser -p Remote@2025!# --authenticationDatabase admin

连接字符串(用于应用程序):

text 复制代码
   # 管理员连接串
   mongodb://adminUser:Admin@2025!#@<服务器IP>:27017/admin?authSource=admin

   # 远程用户连接串
   mongodb://remoteUser:Remote@2025!#@<服务器IP>:27017/yourdb?authSource=admin
相关推荐
欧云服务器3 天前
怎么让脚本命令可以同时在centos、debian、ubuntu执行?
ubuntu·centos·debian
智渊AI3 天前
Ubuntu 20.04/22.04 下通过 NVM 安装 Node.js 22(LTS 稳定版)
ubuntu·node.js·vim
The️3 天前
Linux驱动开发之Read_Write函数
linux·运维·服务器·驱动开发·ubuntu·交互
再战300年3 天前
Samba在ubuntu上安装部署
linux·运维·ubuntu
qwfys2003 天前
How to install golang 1.26.0 to Ubuntu 24.04
ubuntu·golang·install
木尧大兄弟3 天前
Ubuntu 系统安装 OpenClaw 并接入飞书记录
linux·ubuntu·飞书·openclaw
小虾爬滑丫爬3 天前
ubuntu上设置Tomcat 开机启动
ubuntu·tomcat·开机启动
老师用之于民3 天前
【DAY25】线程与进程通信:共享内存、同步机制及实现方案
linux·c语言·ubuntu·visual studio code
小虾爬滑丫爬3 天前
Ubuntu 上设置防火墙
ubuntu·防火墙
林开落L4 天前
解决云服务器内存不足:2 分钟搞定 Ubuntu swap 交换区配置(新手友好版)
运维·服务器·ubuntu·swap交换区