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
相关推荐
XIAOHEZIcode1 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
张飞飞飞飞飞14 天前
Tmux命令使用教程
linux·服务器·ubuntu
盼小辉丶14 天前
Ubuntu极速部署OpenClaw完全指南(本地模型+DeepSeek)
linux·ubuntu·openclaw
黑白园14 天前
【环境搭建】Ubuntu安装(一)
linux·ubuntu
Moshow郑锴14 天前
Ubuntu用SDKMAN轻松管理多个Java 版本
java·ubuntu·sdkman
error:(14 天前
Ubuntu 22.04 GNOME远程桌面配置问题排查与解决全流程
linux·运维·ubuntu
Java知识技术分享14 天前
在windows上使用wsl安装Ubuntu~linux系统
linux·人工智能·windows·ubuntu
天疆说14 天前
在 Ubuntu 24.04 上安装 MATLAB R2021b
数据库·ubuntu·matlab
Clang's Blog14 天前
Ubuntu(20.04/22.04/24.04)国内环境一键安装 Docker、JDK17 和 Maven
ubuntu·docker·maven
izcll14 天前
ubuntu系统安装软件的方法
linux·运维·ubuntu