NoteZ_技术博客 NoteZ_技术博客
🏠 首页
  • 📚 Web技术
  • 📋 Npm笔记
  • 📑 Markdown
  • 📄 Git笔记
  • 📝 Nginx文档
  • 📓 Linux文档
  • 📖 技术文档
  • 📜 其他文档
  • 🧊 NodeJs
  • 🎡 Express
  • 🔥 Rust
  • 🎉 Koa2
  • 🍃 MongoDB
  • 🐬 MySql
  • 🥦 Oracle
  • 🍁 Python
  • 🍄 JavaScript
  • 🌰 CSS
  • 🧄 HTML
  • 🥑 Canvas
  • 🌽 Nuxt
  • 🍆 React
  • 🥜 Vue
  • 🧅 TypeScript
  • 🌶️ AI
  • 📘 分类
  • 📗 标签
  • 📙 归档
⚜️ 在线编辑 (opens new window)
  • 📁 站点收藏
  • 📦 前端组件库
  • 📊 数据可视化
  • 🌈 开源插件
  • 🎗️ 关于我
  • 🔗 友情链接
GitHub (opens new window)

NoteZ_技术博客

前端界的小学生
🏠 首页
  • 📚 Web技术
  • 📋 Npm笔记
  • 📑 Markdown
  • 📄 Git笔记
  • 📝 Nginx文档
  • 📓 Linux文档
  • 📖 技术文档
  • 📜 其他文档
  • 🧊 NodeJs
  • 🎡 Express
  • 🔥 Rust
  • 🎉 Koa2
  • 🍃 MongoDB
  • 🐬 MySql
  • 🥦 Oracle
  • 🍁 Python
  • 🍄 JavaScript
  • 🌰 CSS
  • 🧄 HTML
  • 🥑 Canvas
  • 🌽 Nuxt
  • 🍆 React
  • 🥜 Vue
  • 🧅 TypeScript
  • 🌶️ AI
  • 📘 分类
  • 📗 标签
  • 📙 归档
⚜️ 在线编辑 (opens new window)
  • 📁 站点收藏
  • 📦 前端组件库
  • 📊 数据可视化
  • 🌈 开源插件
  • 🎗️ 关于我
  • 🔗 友情链接
GitHub (opens new window)
  • Express

  • Koa2

  • MongoDB

    • linux 下 mongodb 的安装及配置
    • MongoDB 备份(mongodump)与恢复(mongorestore)
    • MongoDB 插入(insert)数据的正确方法
    • MongoDB 数据库
    • MongoDB 数据库设置账号密码(权限)
      • 创建管理员账户并赋予权限
      • 给自定义数据库设置权限
      • 用户角色列表
      • 内置角色
      • 数据库操作相关命令
    • MongoDB集合数据查询总结
    • Mongoose 动态给 Schema 添加属性
    • Mongoose 数据验证
    • NodeJs 连接操作 MongoDB 数据库
    • Node下使用MongoDB 数据库多条件模糊查询
    • 使用 JS 操作 MongoDB 命令
    • 如何解决Mongodb大数据量分页查询效率问题
    • 给MongoDB数据库bin目录添加工具集
  • MySql

  • NodeJs

  • Oracle

  • Rust

  • Python

  • 后端开发
  • MongoDB
NoteZ
2022-07-21
目录

MongoDB 数据库设置账号密码(权限)

# 创建管理员账户并赋予权限

打开 cmd 或 Xshell,进入到 mongo 的 bin 目录下,输入命令:

# 进入数据库
./mongo
# 进入admin数据库,成功会显示:switched to db admin
use admin 
# 设置用户名密码
db.createUser( {user: "用户名",pwd: "密码",roles: [ { role: "root", db: "admin" } ]})
1
2
3
4
5
6

用户添加成功后会出现成功的字样和添加的用户信息。然后执行:

db.auth('用户名','密码')
1

若返回 “1” 则代表设置成功。

注意

帐号是跟着库走的,所以在指定库里授权,必须也在指定库里验证(auth)。

# 给自定义数据库设置权限

例如我们新建了一个 test 数据库,设置账号:'adminDb',密码:'123456':

use test
db.createUser( {user: "adminDb",pwd: "123456",roles: [ { role: "readWrite", db: "test" } ]})
db.auth('adminDb','123456') #若返回 “1” 则代表设置成功。
1
2
3

进入 mongodb.conf (opens new window) 这个配置文件,添加:

auth = true
1

保存文件,重启 mongodb 服务 (opens new window)即可。

# 用户角色列表

  • Read:允许用户读取指定数据库
  • readWrite:允许用户读写指定数据库
  • dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
  • userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
  • clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
  • readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
  • readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
  • userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
  • dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
  • root:只在admin数据库中可用。超级账号,超级权限。

# 内置角色

  1. 数据库用户角色:read、readWrite;
  2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
  3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
  4. 备份恢复角色:backup、restore;
  5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase;
  6. 超级用户角色:root;
  7. 内部角色:__system; 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase);

# 数据库操作相关命令

# mongodb 进程
ps -ef |grep mongodb

# 查看数据已存在的数据库
show dbs

# 进入数据库
use <数据库名称>

# 查看当前数据库下的所有用户
show users

# 查看当前数据库中的数据表
show tables
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#MongoDB
上次更新: 2024/01/30, 00:35:17
MongoDB 数据库
MongoDB集合数据查询总结

← MongoDB 数据库 MongoDB集合数据查询总结→

最近更新
01
Gitea数据备份与还原
03-10
02
Linux 中使用 rsync 同步文件目录教程
03-10
03
Linux 使用 rsync 互相传输同步文件的简单步骤
03-08
更多文章>
Theme by Vdoing | Copyright © 2019-2025 NoteZ,All rights reserved | 冀ICP备2021027292号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式