MongoDB创建数据库并配置用户名和密码

centos7 运维 · systemofdown · 于 6天前 发布 · 43 次阅读

本例子是在CentOS 7 上为 MongoDB 4.4环境下进行操作

在MongoDB中创建管理员用户

// 切换到 admin 数据库
use admin  
// 创建用户并赋予全局管理员权限,将pwd 替换为强密码
db.createUser({
  user: "admin",
  pwd: "YourAdminPassword",
  roles: [{ role: "root", db: "admin" }]
})

关键说明: root 角色拥有所有数据库的完全控制权(包括关闭数据库)。 先创建用户再启用认证,否则将无法操作数据库

启用认证并重启服务

编辑配置文件:

sudo vi /etc/mongod.conf

修改以下部分:

security:
  authorization: enabled  # 启用认证

重启服务生效:

sudo systemctl restart mongod

创建应用数据库和用户

以管理员身份重新登录:

mongo -u admin -p YourAdminPassword --authenticationDatabase admin

在 Shell 中创建新数据库和用户:

// 创建或切换到应用数据库(首次使用即创建)
use myappdb  
// 创建用户 赋予读写及数据库管理权限
db.createUser({
  user: "appuser",
  pwd: "AppUserPassword",
  roles: ["readWrite", "dbAdmin"] 
})

>权限说明: >readWrite:允许增删改查数据。 >dbAdmin:可管理索引、统计等,但不能管理用户。 >需为每个业务数据库单独创建用户。

定期备份:

使用 mongodump -u appuser -p AppUserPassword --authenticationDatabase myappdb 备份数据。

本文由 systemofdown 创作,采用 知识共享署名 3.0 中国大陆许可协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。

共收到 0 条回复
没有找到数据。
添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册