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"

相关推荐
言、雲2 分钟前
从tryLock()源码来出发,解析Redisson的重试机制和看门狗机制
java·开发语言·数据库
一个程序员_zhangzhen1 小时前
sqlserver新建用户并分配对视图的只读权限
数据库·sqlserver
zfj3211 小时前
学技术学英文:代码中的锁:悲观锁和乐观锁
数据库·乐观锁··悲观锁·竞态条件
吴冰_hogan1 小时前
MySQL InnoDB 存储引擎 Redo Log(重做日志)详解
数据库·oracle
nbsaas-boot1 小时前
探索 JSON 数据在关系型数据库中的应用:MySQL 与 SQL Server 的对比
数据库·mysql·json
cmdch20171 小时前
Mybatis加密解密查询操作(sql前),where要传入加密后的字段时遇到的问题
数据库·sql·mybatis
程序员学习随笔1 小时前
PostgreSQL技术内幕21:SysLogger日志收集器的工作原理
数据库·postgresql
Sun_12_21 小时前
SQL注入(SQL lnjection Base)21
网络·数据库
秦时明月之君临天下1 小时前
PostgreSQL标识符长度限制不能超过63字节
数据库·postgresql
woshilys1 小时前
sql server 备份恢复
数据库·sqlserver