mongoDB设置访问用户名密码

在 MongoDB 中设置访问用户名和密码可以通过以下步骤实现:

1. 启用身份验证

首先,需要在 MongoDB 配置文件 mongod.conf 中启用身份验证。

  1. 找到 mongod.conf 配置文件,路径通常为 /etc/mongod.conf(Linux)或 C:\Program Files\MongoDB\Server\{版本号}\bin\mongod.cfg(Windows)。

  2. 找到以下部分,并将 security.authorization 设置为 enabled

    yaml

    security: authorization: enabled

  3. 保存并重新启动 MongoDB 服务,以启用身份验证。

2. 创建管理员用户

在 MongoDB Shell 中使用以下命令创建管理员用户。管理员用户将拥有对数据库的所有权限。

  1. 打开 MongoDB Shell,连接到 MongoDB 实例:

    mongo

  2. 选择 admin 数据库:

    use admin

  3. 创建管理员用户,用户名为 admin,密码为 password

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

  4. 完成后,使用 exit 退出 MongoDB Shell。

3. 为特定数据库创建用户

可以为特定数据库(例如 mydatabase)创建用户:

  1. 重新连接 MongoDB,并切换到目标数据库:

    mongo -u "admin" -p "password" --authenticationDatabase "admin" use mydatabase

  2. 创建数据库用户:

    db.createUser({ user: "myuser", pwd: "mypassword", roles: [{ role: "readWrite", db: "mydatabase" }] })

  3. 此用户将具有对 mydatabase 的读写权限。

4. 使用用户名和密码连接 MongoDB

启用身份验证并创建用户后,可以通过以下方式连接 MongoDB:

mongo -u "用户名" -p "密码" --authenticationDatabase "admin"

例如:

mongo -u "admin" -p "password" --authenticationDatabase "admin"

相关推荐
陌北v16 分钟前
为什么我从 MySQL 迁移到 PostgreSQL
数据库·mysql·postgresql
北辰水墨41 分钟前
Protobuf:从入门到精通的学习笔记(含 3 个项目及避坑指南)
数据库·postgresql
JIngJaneIL1 小时前
基于java+ vue医院管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
予枫的编程笔记1 小时前
Redis 核心数据结构深度解密:从基础命令到源码架构
java·数据结构·数据库·redis·缓存·架构
信创天地1 小时前
信创国产化数据库的厂商有哪些?分别用在哪个领域?
数据库·python·网络安全·系统架构·系统安全·运维开发
JIngJaneIL1 小时前
基于java + vue校园跑腿便利平台系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
瀚高PG实验室2 小时前
highgo DB中数据库对象,模式,用户,权限之间的关系
数据库·瀚高数据库
越来越无动于衷2 小时前
odbc链接oracle数据源
数据库·oracle
李迟2 小时前
Golang实践录:使用sqlx操作sqlite3数据库
数据库·golang·sqlite
小Mie不吃饭2 小时前
Oracle - 闪回技术及生产实践
数据库·oracle