mongodb zip安装_认识 MongoDB

大部分数据库都是 C/S 架构,服务端提供服务,操作时需要使用客户端。

MongoDB 也是如此,需要启动服务端进程 mongod 提供服务,然后使用其自带的 mongo 命令行程序或者其它客户端与服务端通信进行相应的操作。

本文先对服务端进行一些简单介绍,让大家了解一些概念,然后使用客户端程序连接服务器,加深对一些概念的理解。

1 服务端

先了解 3 个名词:数据库、集合、文档。它们的关系如图

cba6ffd81cac8240f212eae3359aab46.png
  • 数据是以文档的形式进行存储的,每个文档代表一条数据
  • 集合一般用于容纳相同类型的文档
  • 数据库一般用于容纳相同业务或者应用下的集合

如果你之前对关系型数据库有了解,可以将文档理解为行,集合理解为表。

一个服务器支持管理多个数据库,通过客户端我们可以对不同库下面的集合、文档做一些数据定义、数据修改等操作,在库和集合的基础上,我们还能设置不同的访问权限。

PS:对于名词「服务器」或者「服务端」我做下说明,在本文它们都指的是提供服务的 mongod 进程,并非提供硬件支持的计算机

2 客户端

mongo 是 MongoDB 自带的命令行客户端工具,本文暂时不会用到它,因为现在的目的是让大家看下数据库到底长什么样,所以用官方提供的 GUI 工具 Compass 更合适。

下载地址:

https://www.mongodb.com/try/download/compass

怎么安装呢?

对于 macOS 平台,选择平台 OS X 64-bit 下载 dmg 镜像后,打开 dmg 将 Compass 拖入到应用程序中即可。

对于 Windows 平台,可以选择平台 Windows 64-bit(zip) 下载一个压缩包,解压后执行 MongoDBCompass.exe 就可以使用了。当然,你也可以下载其它类型的文件,比如 msi 等,进行安装。这里使用压缩包相对简单点,不用安装直接执行 exe,方便大家能比较顺利的使用上 Compass。

打开后界面是这样的

6d06fd07fa51f0058b204187d2b83b21.png

PS:由于我之前用过,所以左边栏 Recents 下历史记录,如果是第一次打开,Recents 下是空的

我们可以访问 MongoDB 大学提供的示例数据,在界面中间的输入框中输入如下连接串

mongodb+srv://m001-student:m001-mongodb-basics@cluster0-jxeqq.mongodb.net/test

简单理解下这个连接串的内容

  • mongodb+srv 使用的协议
  • m001-student:m001-mongodb-basics 用户名、密码
  • cluster0-jxeqq.mongodb.net 服务器地址
  • test 默认数据库

点击 CONNECT 后,我们会看到如下界面

90e8c64bcc9adb6d21a448c94226c612.png

可以看到四块信息

  • 左上是一些概览信息,可以看到数据库以及集合的总量
  • 左中是服务器以及集群的信息,这里我们可以先忽略,后面集群相关的文章看了后自然就明白了
  • 左下是所有的数据库列表
  • 右边也是一个数据库列表,不过有额外的一些统计信息。从左到右依次是库所占的存储空间、该库含有的集合数量、该库中所有集合建立的索引数量

需要注意的是,上面的信息都是当前用户能看到的一些信息,如果该用户没有某些库或者集合的权限,他是看不到这些信息的。

我们下拉右边的列表,找到数据库 video 后点击后可以看到一个集合列表

d48495edd33f52f3b6eaa90915cc5853.png

对于每一个集合我们也可以看到一些统计信息,从左到右依次是文档数量、平均每个文档所占存储空间大小、总的文档大小、索引数量、总的索引大小,还有就是其它的一些属性信息。

点击集合 movies 看下详细信息

c1591dde245e9ac250f9ac27820c3799.png

其中

  • video.movies 叫做命名空间,他由数据库名和集合名以点号连接而成,后面我们用它来定位一个集合
  • Documents 标签页下列出了当前集合的部分文档,我们可以在查询框中输入查询条件进行查询,其它标签页的内容我们先不关注
  • 文档记录了具体的数据信息,每个文档都必须有一个唯一的主键 _id

我们看第一个文档,除了 _id 外,它记录了电影标题、年代、编号等信息。如果要查询 2020 年的电影,该怎么做呢?MongoDB 有自己的一套查询语言,这里会用到等值查询。在查询框中输入

{'year': 2020}

点击 Find,我们就能找到 2020 年的电影了。如果要查询 2000 以及之后的电影呢?使用下面的查询条件即可

{'year': {'$gte': 2000}}

对于 MongoDB 怎么使用查询,后面的文章会比较详细的介绍,这里大家简单了解下就行。

3 小节

本文主要介绍了 MongoDB 的一些基础概念,并用 Compass 连接服务做了一些简单操作,主要目的是让大家对数据库有了一个大概的认识。

4 参考

  1. https://university.mongodb.com/mercury/M001/2020_July_7/chapter/Chapter_1_Introduction/lesson/594f8566a25de40c889d8a45/lecture
  2. https://university.mongodb.com/mercury/M001/2020_July_7/chapter/Chapter_0_Setup/lesson/594d8f1e8c07c3a9b60bdfb3/lecture
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值