| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> MongoDB简介&开启登录认证 -> 正文阅读 |
|
[大数据]MongoDB简介&开启登录认证 |
文章目录MongoDB简介&开启登录认证本文基于MongoDB4.2编写,主要包括MongoDB简介,聚合操作简介、模型简介和安全;最后介绍MongoDB开启权限认证。 简介MongoDB是一种易于扩展和部署的文档类型数据库;每条记录在MongoDB中用文档表示,其中文档结构类似于JSON,字段和值对的形式;此外每条文档都隶属于Collection,Collection类似于数据库中的表;此外MongoDB还支持View和请求式view。 文档字段结构
具有以下优势
其他特性
聚合操作简介聚合操作是通过关联多个文档数据经过一系列计算获得单个数据的一种计算操作;MongoDB提供三种计算方式:聚合管道、map-reduce函数和简单聚合函数。 聚合管道使用方式如下:
匹配status为“A”的数据,根据cust_id字段分组,最后根据分组求每个分组中amout的和。 map-reduce和简单聚合函数请参考官网 文档结构简介MongoDB的collections创建时默认是不需要指定结构,即MongoDB的表结构是动态可变的;文档结构可分为两种:嵌套结构和引用结构;此外文档原子性写操作中,单文档支持原子性,多文档不支持(4.2以后支持);最后MongoDB3.2开始支持文档格式校验。以下将主要介绍文档格式校验和文档结构设计内容。 文档格式校验
? 更多表达式可参考官网 文档结构选择建议
安全支持TLS/SSL通信加密;数据安全基于角色赋权;用户安全基于SCRAM或x.509实现认证;以下主要介绍角色相关内容 角色简介MongoDB通过角色来控制用户操作权限和访问权限,MongoDB支持用户自定义角色和使用系统内置角色;以下将介绍内置角色,自定义角色请移步官网 内置角色数据库用户角色read:允许在授权db的所有表上进行读操作 readWrite:允许在授权db的所有表上进行读和写操作
数据库管理员角色dbAdmin:允许在授权db执行结构相关任务、索引任务和聚集统计任务,该角色没有用户和角色管理能力 dbOwner:包含readWrite、dbAdmin和userAdmin权限 userAdmin:允许在授权db上进行创建修改角色或用户;由于userAdmin允许授予用户任何权限给任何角色,因此如果用户拥有admin的userAdmin角色,即拥有最高权限
所有库角色以下角色将获得所有db的相关权限,除了local和config这两个db。 readAnyDatabase:该角色能读取任何db的collection readWriteAnyDatabase:该角色能读写任何db的collection userAdminAnyDatabase:该角色在任何db上都拥有userAdmin权限 dbAdminAnyDatabase:该角色在任何db上都拥有dbAdmin权限
超级权限MongoDB内置有一个超级权限角色root,该角色是这些角色dbOwner、userAdmin、userAdminAnyDataBase、clusterAdmin、restore和backup的合并版
其他更多角色信息,例如:集群管理角色、备份修复角色请移步官网 开启MongoDB登录权限验证创建用户
修改配置&重启MongoDB
在启动命令行中加入 mongod --auth --port 27017 --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log
在配置文件中(默认:/etc/mongod.conf)添加如下信息,然后重启(mongod --config /etc/mongod.conf):
登录MongoDB
mongo -u root -p --authenticationDatabase “admin”
Q&A
参考链接https://www.mongodb.com/docs/v4.2/introduction/ |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 20:15:00- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |