数据库简介
在使用MongoDB数据库之前,我们应该要知道我们使用它的原因:
在数据库当中,有常见的三高需求:
High performance:对数据库高并发读写的需求。
Huge Storage:对海量数据的高效率存储和访问的需求。
High Scalability && High Availability:对数据库的高可扩展性和高可用性的需求。
在数据库当中特定的具体的应用场景:
社交场景、游戏场景、物流场景、物联网场景、视频场景等。在这些应用场景中,数据操作方面的共同特点是:数据量大、写入操作频繁、价值较低的数据,对事务性要求不高。
传统的关系型数据库(如MySQL)在数据操作的 “三高” 需求以及应对Web2.0的网站场景需求面前显得力不从心,对于这种情况我们更适合使用 MongoDB 来实现数据的存储。
选择MongoDB的合适时机:
应用不需要事务及复杂join支持
新应用,需求会变,数据模型无法确定,想快速迭代开发
应用需要2000-3000以上的读写QPS(更高也可以)
应用需要TB甚至PB级别数据存储
应用要求存储的数据不丢失
应用需要99.999%高可用
应用需要大量的地理位置查询、文本查询
上述场景使用MySQL数据库也是可以完成的,但是相对MongoDB来说,可以以更低的成本解决问题(包括学习、开发、运维等成本)。
MongoDB数据库简介
MongoDB是一个开源、高性能、无模式的文档型数据库,当初的设计就是用于简化开发和方便扩展,是NoSQL数据库产品中的一种。是最像关系型数据库(MySQL)的非关系型数据库。
MongoDB支持的数据结构非常松散,是一种类似于JSON的格式叫BSON,所以它既可以存储比较复杂的数据类型,又相当的灵活。MySQL与MongoDB数据库对比如下:

MongoDB中的记录是一个文档,它是一个由字段和值对(field:value)组成的数据结构。MongoDB文档类似于JSON对象,即一个文档认为就是一个对象。字段的数据类型是字符型,它的值除了使用基本的一些类型外,还可以包括其他文档、普通数组和文档数组。相关概念比较如下:
SQL术语/概念 | MongoDB术语/概念 | 解释/说明 |
---|
database | database | 数据库 |
table | collection | 数据库表/集合 |
row | document | 数据库记录行/文档 |
column | field | 数据库字段/域 |
index | index | 索引 |
table joins | | 表连接,MongoDB不支持 |
| 嵌入文档 | MongoDB通过嵌入式文档来替代多表连接 |
primary key | primary key | 主键,MongoDB自动将 _id 字段设置为主键 |
MongoDB的特点:高性能、高可用性、高扩展性、丰富的查询支持
MongoDB数据库的安装
点击官方链接:https://www.mongodb.com/ ,然后点击 Products -> Community Edition,如下:

根据自己的需要进行安装,如下:

版本选择:
MongoDB的版本命名规范如:x、y、z
y为奇数时表示当前版本为开发版,如:1.5.2、4.1.13
y为偶数时表示当前版本为稳定版,如:1.6.3、4.0.10
z是修正版本号,数字越大越好。
安装选择:
msi:需要自己安装,里面的相关配置可以自己自定义。
zip:解压缩即可使用。
这里我就选择zip的方式进行下载,如下安装完成之后,解压缩完成即可:

在解压的目录中,手动建立一个目录用于存放数据文件,如:data/db (通常命名方式)

MongoDB数据库的启动
MongoDB数据库服务启动有以下两种方式:
命令行参数方式启动服务
我们进入 bin 目录,cmd进入命令行窗口,输入以下命令回车:
mongod --dbpath=..datadb
启动之后,可以看到默认的地址和端口

在浏览器上输入 localhost:27017 ,如果出现以下界面说明 MongoDB 启动成功:

配置文件方式启动服务
在解压目录中新建 config 文件夹,该文件夹中新建配置文件 mongod.conf,内容参考如下:
storage:
dbPath: D:programmingMongoDBmongodb-win32-x86_64-windows-6.0.4datadb
配置完成之后,按照如下命令进行启动,仍能启动成功:
mongod -f ..confmongodb.conf
mongod --config ..confmongodb.conf

更多配置信息可参考如下,或者官网: 官网 。
systemLog:
destination: file
path: 自己的路径
logAppend: true
storage:
journal:
enabled: true
dbPath: 自己的路径
net:
bindIp: 127.0.0.1
port: 27020
setParameter:
enableLocalhostAuthBypass: false
虽然上面两种方式都能开启服务,但是终端是不能关闭的,有没有办法能够将终端关掉然后服务仍然存在,如果想关闭在自行关闭即可,答案是有的,如下:
在data文件夹下新建文件夹 log (用来存放日志文件)

在bin同级目录下新建配置文件 mongo.config,并用记事本打开输入以下两条命令,如下:
dppath=D:programmingMongoDBmongodb-win32-x86_64-windows-6.0.4datadb
logpath=D:programmingMongoDBmongodb-win32-x86_64-windows-6.0.4datalogmongo.log
用管理员身份打开cmd,然后切到 bin 文件地址,输入以下命令,命令中的 “MongoDB” 就是之后启动 MongoDB 服务的名字。
mongod -dbpath "D:programmingMongoDBmongodb-win32-x86_64-windows-6.0.4datadb" -logpath "D:programmingMongoDBmongodb-win32-x86_64-windows-6.0.4datalogmongo.log" -install -serviceName "MongoDB"
配置完成之后,就可以使用命令来进行启动或关闭服务,如下:
NET start MongoDB
NET stop MongoDB

ok,这样配置完是不是很简单,输入简单的命令就可以开启或关闭服务。
MongoDB数据库环境变量的配置
我们在使用MangoDB数据库的时候,可以先配置一下环境变量,避免后期会有一些问题的出现:
鼠标右键 我的电脑(此电脑) - 属性 - 高级系统设置 再选择 环境变量,如下:

点击编辑,然后把 MongoDB 的 bin 目录路径粘贴上去,如下:

MongoDB图形化管理工具
使用MongoDB数据库可以使用两种方式进行操作,如下:
使用 Shell 命令进行连接
注意:从6版本以后,MongoDB6不再默认安装shell工具--------Mongosh。如果需要可自行安装,ok,这里我自行安装给大家展示一下,点击安装shell的下载地址:下载地址 。

点击下载zip格式,然后解压缩得到如下文件:

bin目录下的有两个文件:mongosh.exe 文件和 mongosh_crypt_v1.dll 文件,复制这2个文件到刚刚安装MongoDB路径下的bin文件里面。如下:

至此,shell工具安装完成,我们在MongoDB数据库服务开启的状态下,win+r输入cmd,在当前终端输入 mongod,弹出以下内容后,说明我们工具安装成功,且环境变量配置成功。

继续输入mongosh,弹出以下内容后继续输入show dbs ,如下:

ok,从现在开始你就可以操作数据库了。
使用 图像化工具 进行连接
图形化管理工具极大的方便了数据库的操作与管理,常用的图形化管理工具有很多,官方为该数据库提供的图像化工具是 Compass ,因为博主之间是玩 MySQL数据库的,个人使用的图形化工具是Navicat Preminum,个人也是极其推荐,其界面简洁功能清楚、对于新手来说易学易用,并且支持中文。其官方下载链接为:Navicat 。注意,这个工具是收费的,有免费试用14天,如果想永久使用的话,联系博主,博主会提供有效方法帮助你!

如何想使用图像化界面工具去操作数据库的话,如下选择相应的数据库:

点击之后,配置参数,点击测试连接,如下:

连接参数介绍:
stand alone:独立的;shard cluster:分片集群;replica set:复制集
连接直接默认即可,一般情况下,我们连接只需要连接主库查数据,所以选择独立的这个连接方式就可以,填写好常规参数可以点击测试连接是否正常,即可连接!
因为是个人测试嘛,使用的是本地的localhost
出现如下界面说明连接成功,我们直接点击确定即可。

进入之后,我们可以点击新建查询来看看当前的数据库有多少个库,如下:

可以看看一些操作,如下:


至此,MangoDB的安装与简单使用完成,如果想了解更多数据库知识,欢迎关注!!!
版权声明:本文内容始发于CSDN>作者 : 亦世凡华、,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行可。
始发链接:https:
在此特别鸣谢:CSDN博主>亦世凡华、的创作。
本文已获原作者亦世凡华、授权发布在本公众号;
原作者已在本公众号关联运营账号,故在此声明本文原创为CSDN亦世凡华。
此篇文章的所有版权归原作者所有,商业转载建议请联系原作者,非商业转载请注明出处。