MongoDB 账户权限配置
1. 账户权限配置
创建超级管理用户
use admin db.createUser({ user:'admin', pwd:'123456', roles:[{role:'root',db:'admin'}] }) 复制代码
修改数据库配置文件
路径(依据实际路径): C:\Program Files\MongoDB\Server\4.0\bin\mongod.cfg 配置: security: authorization: enabled 复制代码
重启 mongodb 服务
windows + R
用超级管理员账户连接数据库
mongo admin -u 用户名 -p 密码 mongo 192.168.1.200:27017/test -u user -p password 复制代码
给 xxx 数据库创建一个用户, 只能访问 xxx数据库, 不能访问其他数据库
use eggcms db.createUser( { user: "eggadmin", pwd: "123456", roles: [ { role: "dbOwner", db: "eggcms" } ] } ) 复制代码
2. 账户权限配置中常用的命令
查看当前库下的用户
show users; 复制代码
删除用户
db.dropUser("eggadmin") 复制代码
修改用户密码
db.updateUser( "admin",{pwd:"password"}); 复制代码
密码认证
db.auth("admin","password"); 复制代码
3. 数据库角色
数据库用户角色:read、readWrite; 数据库管理角色:dbAdmin、dbOwner、userAdmin; 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager; 备份恢复角色:backup、restore; 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、 dbAdminAnyDatabase 超级用户角色:root 复制代码
4. 连接数据库的时候需要配置账户密码
const url = 'mongodb://admin:123456@localhost:27017/'; 复制代码
拓展:关于 MongoDB
MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 在高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
特点:
MongoDB 是一个面向文档存储的数据库;
MongoDb 使用 update() 命令可以实现替换完成的文档(数据)或者一些指定的数据字段;
Mongodb 中的 Map/reduce 主要是用来对数据进行批量处理和聚合操作;
Map 函数调用 emit(key,value) 遍历集合中所有的记录,将 key 与 value 传给 Reduce 函数进行处理;
可以通过 db.runCommand 或 mapreduce 命令来执行 MapReduce 操作;
作者:明天也要努力
链接:https://juejin.cn/post/7026000193677951007