温馨提示×

centos mongodb怎么配置用户名

小樊
41
2026-10-17 12:25:31
栏目: 云计算

在 CentOS 上配置 MongoDB 用户名(账号密码),一般分为以下几个步骤:


一、MongoDB 安装前提

假设你已经安装好 MongoDB(如 4.x / 5.x / 6.x),并且服务能正常启动。

查看服务状态:

systemctl status mongod

二、先以无认证方式启动(默认)

如果还没开启认证,先确认 mongod.conf 中 未开启 auth

vim /etc/mongod.conf

确保没有或注释掉:

security:
  authorization: enabled

重启 MongoDB:

systemctl restart mongod

三、创建管理员用户(必须)

MongoDB 的账号是 基于数据库 的,先建一个管理员。

mongo

(MongoDB 6+ 可用 mongosh)

use admin

db.createUser({
  user: "root",
  pwd: "StrongPassword123",
  roles: [ { role: "root", db: "admin" } ]
})

✅ root 权限最大,适合管理用


四、为某个数据库创建普通用户

比如给 testdb 建一个读写用户:

use testdb

db.createUser({
  user: "testuser",
  pwd: "TestPwd123",
  roles: [
    { role: "readWrite", db: "testdb" }
  ]
})

五、开启 MongoDB 认证

编辑配置文件:

vim /etc/mongod.conf

添加:

security:
  authorization: enabled

重启服务:

systemctl restart mongod

六、使用用户名登录

1️⃣ 命令行登录

mongo -u root -p --authenticationDatabase admin

或指定数据库:

mongo -u testuser -p --authenticationDatabase testdb

2️⃣ 连接字符串

mongodb://testuser:TestPwd123@localhost:27017/testdb

七、常见问题

❓ 登录提示未授权

  • 确认 authenticationDatabase 正确
  • 确认用户是在对应库创建的

❓ CentOS 防火墙

如果远程连接:

firewall-cmd --add-port=27017/tcp --permanent
firewall-cmd --reload

如果你愿意,我可以:

  • 给你一份 生产环境安全配置
  • 教你 MongoDB 副本集账号配置
  • 或帮你写 systemd + 认证启动脚本

你当前 MongoDB 是哪个版本?CentOS 几?

0 踩