MongoDB的核心概念以及查询的一些基操

库(DataBase)

MongoDB中的库就类似于传统关系型数据库中库的概念,用来通过不同的库隔离不同的应用数据。
MongoDB中可以建立多个数据库。每一个数据库都有自己的集合和权限,不同的数据库也放置在不同的文件中。默认的数据库为test,数据库存储在启动指定的data目录中。

集合(Collection)

集合就是MongoDB文档组,类似于RDBMS(关系数据库管理系统:Relation DataBase Management System)中表的概念。

集合存在于数据库中,一个库中可以创建多个集合。每个集合没有固定的结构,这意味着你在对集合可以插入不同格式和类型的数据,但通常情况下我们插入集合的数据都会有一定的关联性

文档

文档集合中一条条记录,是一组键值(key-value)对(即BSON)。MongoDB 的文档不需要设置相同的字段,并且相同的字段不需要相同的数据类型,这与关系型数据库有很大的区别,也是MongoDB非常突出的特点。

举个栗子

{"name":"xiang","age":"18"}

关系总结

RDBMSMongoDB
数据库(database )数据库(database )
表(table)集合(collection )
行(row)文档 (document )
列(column )字段(field )

基本操作

查看所有的库,默认连接上使用的是test数据库
在这里插入图片描述
user 数据库名,若没有改库,则会自动创建。
在这里插入图片描述
细心的人会发现,刚刚创建数据库的没有啊,这是因为MongoDB的设计在库中没有任何集合的时候,默认是不显示的。

查看当前正在使用的数据库。
在这里插入图片描述

那我们现在给 数据库xiang中插入一条简单的数据。就会发现数据库xiang查询出来了。
在这里插入图片描述
注意:

  • admin:从权限的角度来看,这是"root"数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。一些特定的服务器端命令也只能从这个数据库运行,比如列出所有的数据库或者关闭服务器。
  • local:这个数据永远不会被复制,可以用来存储限于本地单台服务器的任意集合。
  • config :当Mongo用于分片设置时, config数据库在内部使用,用于保存分片的相关信息。

删除数据库

默认是删除当前选中的数据库。

db.dropDatabase();

注意大小写。

提示删除失败也。
"not authorized on xiang to execute command { dropDatabase:
在这里插入图片描述解决办法:
Mongodb默认是不需要用户密码就可以连接的,如果使用命令报错"not authorized on admin to execute command ",则表示当前登陆用户不具备相应权限;

过创建一个用户,赋予用户root权限
注意:在createUser之前先use admin切换一下。

db.createUser(
	{
		user:"root",
		pwd:"123456",
		roles:[{role:"root",db:"admin"}]
	}
);

添加用户权限成功之后,使用root用户登陆,再次使用命令即可成功!!!
在这里插入图片描述
在这里插入图片描述

删除成功。
在这里插入图片描述
今天就到这里了 洗洗睡觉。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值