数据库应用:MongoDB 库与集合管理

目录

一、理论

1.MongoDB用户管理

2.MogoDB库管理

3.MogoDB集合管理

二、实验

1.MongoDB用户管理

2.MogoDB库管理

3.MogoDB集合管理

三、问题

1.不显示新创建的数据库

2.插入数据报错

3.删除指定数据库报错


一、理论

1.MongoDB用户管理

(1) 内置角色

数据库用户角色:read、readWrite; 
数据库管理角色:dbAdmin、dbOwner、userAdmin;
集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager; 
备份恢复角色:backup、restore; 
所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase 
超级用户角色:root
// 有几个角色间接或直接提供了系统超级用户的访问权限(dbOwner 、userAdmin、userAdminAnyDatabase)

(2)内置权限

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

2.MogoDB库管理

(1)显示所有数据库列表(空数据库不会显示,因为空数据库已经被mongoDB回收了)

在mongoDB中,最重要的核心是文档,如果一个库或者一个库下的集合中的文档全部被删除了,则这个库和这个集合就会mongoDB回收删除。

show dbs
show databases

(2)切换数据库,如果数据库不存在则创建数据库。

use  <database>

(3)查看当前工作的数据库

 // db.getName() 的简写
db  

(4)删除当前数据库,如果数据库不存在,也会返回{"ok":1}

use <db>          // 先切换到要删除的数据库中,然后才能删除数据库
db.dropDatabase()

(5)查看当前数据库状态

db.stats()

3.MogoDB集合管理

(1)集合列表

 // 或 show tables   或 db.getCollectionNames()
show collections

(2)删除集合

db.集合.drop()

(3)查看集合

db.getCollection("集合")
db.集合

(4)查看集合创建信息

db.printCollectionStats()

二、实验

1.MongoDB用户管理

(1)登录数据库

(2)给Admin数据库创建账户管理员

(3)显示用户

(4)创建超级管理员

(5)创建用户自己的数据库的角色

(6)查看当前仓库下的用户

(7)在admin库中全局显示用户

(8)查看当前数据库下的管理用户

(9)admin数据库中查询

(10)以结构化格式显示数据

(11)删除用户

(12)重新创建并退出

(13)编辑

(14)重启mongdb,配置生效

(15)开启了账户认证机制以后,再次进入

(16)此处认证时填写正确密码

(17)此处认证时填写错误密码,报错如下

2.MogoDB库管理

(1)显示所有数据库列表

(2)切换数据库

(3)查看当前工作的数据库

(4)添加数据

(5)删除数据

(6)显示已删除

(7)查看状态

3.MogoDB集合管理

(1)加文档到集合

(2)删除集合

(3)查看集合

(4)查看集合创建信息

(5)添加一条数据

(6)查看详细信息

(7)变量赋值

(8)查询变量值

(9)mongo原则上内置了js解释引擎,所以支持js语法(10)javascrit总可以通过typeof 来查看数据的类型

(11)添加一条数据(12)查看数据(nosql就是数据与数据之间格式是不固定的)

(13)添加多条数据(14)显示有4条数据

(15)添加2个16岁的

(16)再添加2个16岁的,此时共有4个16岁

(17)删除满足条件的第一条数据

(18)删除满足条件的所有数据

(19)16再添加4个16岁的,此时共有4个16岁

(20) 新版本建议用deleteone删除一条

(21)新版本建议用deletemany删除多条

三、问题

1.不显示新创建的数据库

(1)查询所有数据库

(2)原因分析

因为david库无数据

(3)解决方法

插入数据后显示

2.插入数据报错

(1)报错

(2)原因分析

语法错误,修改为insertOne

(3)解决方法

3.删除指定数据库报错

(1)报错

(2)原因分析

语法错误

(3)解决方法

修改命令

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/179133.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

每日一题(LeetCode)----哈希表--快乐数

每日一题(LeetCode)----哈希表–快乐数 1.题目&#xff08;202. 快乐数&#xff09; 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为&#xff1a; 对于一个正整数&#xff0c;每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为…

nodejs接收前端分片并组合成完整文件

前端将文件分成多个块&#xff0c;并将每个块上传到服务器。 服务器使用Node.js创建一个HTTP服务器或Express服务器。 在服务器端&#xff0c;我们可以使用Multer或Busboy模块来处理上传的文件块。 在文件上传完成之后&#xff0c;我们可以使用fs模块的createWriteStream()方…

11.28 知识回顾(Web框架、路由控制、视图层)

一、 web 框架 1.1 web框架是什么&#xff1f; 别人帮咱们写了一些基础代码------》我们只需要在固定的位置写固定的代码--》就能实现一个web应用 Web框架&#xff08;Web framework&#xff09;是一种开发框架&#xff0c;用来支持动态网站、网络应用和网络服务的开发。这大多…

2020年6月9日 Go生态洞察:VS Code Go扩展加入Go项目

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

unity学习笔记10

一、生命周期函数 1.Awake() 调用时间&#xff1a;对象被激活或创建时。 用途&#xff1a;通常用于初始化对象的状态&#xff0c;获取组件引用或执行其他在脚本生命周期早期需要完成的任务。 2.OnEnable(): 调用时间&#xff1a;对象激活时&#xff0c;包括对象被创建和Se…

力扣150. 逆波兰表达式求值

栈 思路&#xff1a; 使用栈存放运算数&#xff1b;遍历 tokens&#xff0c;当遇到运算符时&#xff0c;2 次出栈得到运算数进行相应的运算&#xff0c;将运算结果入栈&#xff1b;最终的结果在栈顶上&#xff1b; class Solution { public:int evalRPN(vector<string>…

Python数据预处理详解

更多资料获取 &#x1f4da; 个人网站&#xff1a;ipengtao.com 数据预处理是数据科学中至关重要的步骤&#xff0c;它包括清洗、转换、归一化等操作&#xff0c;以使数据适合于机器学习模型的使用。Python提供了多种强大的库和工具&#xff0c;能够帮助进行数据预处理。本文将…

springmvc无法访问静态资源

解决方案 在spring-mvc.xml加入下面这些即可 <mvc:default-servlet-handler></mvc:default-servlet-handler> 配置原理 它的意思是 先安装springmvc的前端控制器来寻找路径&#xff0c;如果找不到就交由tomcat服务器寻找&#xff0c; 大伙都学过jsp&#xff0…

idea 2023使用技巧(一)

IntelliJ IDEA在业界被公认为最好的java开发工具之一。它能给你良好的开发体验。 idea版本号为2023.2.5。 1 基础操作 1.1索引 idea首次加载项目时&#xff0c;都会创建索引&#xff0c;创建索引的时间跟项目的文件多少成正比。idea的缓存和索引主要是用来加快文件查询&…

重装电脑后要做的操作

一. typora typora偏好设置 图片 : 与**同一级目录的assess文件

JVM 参数介绍

在一些规模稍大的应用中&#xff0c;Java虚拟机&#xff08;JVM&#xff09;的内存设置尤为重要&#xff0c;想在项目中取得好的效率&#xff0c;GC&#xff08;垃圾回收&#xff09;的设置是第一步。 PermGen space&#xff1a;全称是Permanent Generation space.就是说是永久…

LINQ-123之数据源前进一点点

之前提到满足一定条件的数据都可以成为LINQ的数据源&#xff0c;那么条件是什么&#xff1f; 实现接口 IEnumerable<T> 或IQueryable<T>&#xff0c;满足其一就可以使用LINQ。 使用LINQ对数据源可以做以下几类事&#xff1a; 1、获取数据源的一部分 2、获取数据…

计算机丢失vcomp140.dll是什么意思,如何解决与修复(附教程)

vcomp140.dll缺失的5种解决方法以及vcomp140.dll缺失原因 引言&#xff1a; 在日常使用电脑的过程中&#xff0c;我们可能会遇到一些错误提示&#xff0c;其中之一就是“vcomp140.dll缺失”。这个错误提示通常出现在运行某些程序或游戏时&#xff0c;给使用者带来了困扰。本文…

【Python3】【力扣题】367. 有效的完全平方数

【力扣题】题目描述&#xff1a; 【Python3】代码&#xff1a; 1、解题思路&#xff1a;Python函数。num的平方根 或者 num的0.5次幂。 知识点&#xff1a;float.is_integer(...)&#xff1a;判断浮点数的值是否等于整数。也可以&#xff1a;浮点数.is_integer()。 pow(a,b)&…

字符串左旋问题

问题描述&#xff1a;将一个字符串左旋n个字符 例如“abcd”左旋俩个字符得到“cdab” 法一&#xff1a;暴力循环法 左旋几个就循环几次 第一次循环&#xff0c;先将首字符a存放在临时变量中&#xff0c;然后将bcd分别向前移动一位&#xff0c;最后将a补加到字符串末尾&…

重新定义学习方式,河南开放大学的学习好帮手

作为一名出现代学者&#xff0c;我深深意识到学习的重要性&#xff0c;尤其是对于在职人士和远程教育学生来说。然而&#xff0c;长期以来&#xff0c;我一直困扰于找不到高质量的学习资源和题目。然而&#xff0c;幸运的是&#xff0c;我发现了一款名为“电大搜题”的微信公众…

2020年4月20日 Go生态洞察:2019年Go开发者调查结果

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

springcloud进销存管理系统源码

开发说明&#xff1a; jdk1.8&#xff0c;mysql5.7&#xff0c;idea&#xff0c;vscode springcloud springboot mybatis vue elementui 功能介绍&#xff1a; 后台管理&#xff1a; 统计分析&#xff1a;查看产品&#xff0c;采购&#xff0c;销售数量&#xff1b;统计近…

入门必读:Figma软件的功能和用途一览!

1、Figma软件是做什么的 Figma软件奠定了在线设计工具的形式&#xff0c;产品UI设计功能非常强大&#xff0c;Figma软件基于web操作&#xff0c;无论是macos、windows可以使用这个软件&#xff0c;即使有电脑、浏览器、网络&#xff0c;甚至软件也不需要下载&#xff0c;节省了…

周期串(Periodic Strings)

做了我两个小时&#xff0c;我真的裂开 之前已经发过一次了&#xff0c;走在回宿舍的路上突然发现有些情况并不适用&#xff0c;赶紧删掉了 题目如下&#xff1a; 如果一个字符串可以由某个长度为k的字符串重复多次得到&#xff0c;则称该串以k为周期。例如&#xff1a;abca…