温馨提示×

ubuntu mongodb如何设置用户

小樊
44
2026-09-20 01:53:59
栏目: 云计算

在 Ubuntu 上给 MongoDB 设置用户,通常分为 安装后启用鉴权 和 创建用户 两步。下面以 MongoDB 6.x / 7.x(Ubuntu 20.04/22.04) 为例说明。


一、修改 MongoDB 配置,开启鉴权

1. 编辑配置文件

sudo nano /etc/mongod.conf

2. 找到 security 部分,改为:

security:
  authorization: enabled

如果没有 security,就手动加上。

3. 重启 MongoDB

sudo systemctl restart mongod

二、创建管理员用户(推荐先建 admin 用户)

1. 先无密码登录(如果还没开鉴权)

mongosh

2. 切换到 admin 库

use admin

3. 创建管理员

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

三、使用管理员登录并创建普通用户

1. 退出后用管理员登录

mongosh -u admin -p --authenticationDatabase admin

2. 给某个数据库创建用户(例如 testdb)

use testdb

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

四、连接时使用用户名密码

mongosh -u testuser -p --authenticationDatabase testdb

或连接字符串:

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

五、常用角色说明

角色 说明
root 超级管理员
read 只读
readWrite 读写
dbAdmin 数据库管理
userAdmin 用户管理

六、常见问题

1. 忘记管理员密码

  • 临时关闭 authorization
  • 用本地登录重置用户
  • 再开启鉴权

2. 修改用户密码

db.changeUserPassword("testuser", "NewPass")

3. 删除用户

db.dropUser("testuser")

如果你用的是 MongoDB 4.x 或更早版本(mongo 命令),或者 Docker 版 MongoDB,可以告诉我,我给你对应版本的操作方式。

0 踩