1.概述

​ MongoDB是一个开源、高性能、无模式的文档行数据库。NoSQL数据库产品的一种,最像关系型数据库的非关系型数据库
​ 场景:- 淘宝用户数据

          - 存储位置:数据库
          - 特征:永久性存储,修改频度极低
      - 游戏装备数据、游戏道具数据
          - 存储位置:数据库、Mongodb
          - 特征:永久性存储与临时存储相结合、修改频度较高
      - 直播数据、打赏数据、粉丝数据
          - 存储位置:数据库、Mongodb
          - 特征:永久性存储与临时存储相结合,修改频度极高
      - 物联网数据
          - 存储位置:Mongodb
          - 特征:临时存储,修改频度飞速

2.安装

​ windows版安装包下载地址:https://www.mongodb.com/try/download
​ 下载的安装包也有两种形式,一种是一键安装的msi文件,还有一种是解压缩就能使用的zip文件,哪种形式都行,本课程采用解压缩zip文件进行安装。
​ 解压缩完毕后会得到如下文件,其中bin目录包含了所有mongodb的可执行命令。
​ mongodb在运行时需要指定一个数据存储的目录,所以创建一个数据存储目录,通常放置在安装目录中,此处创建data的目录用来存储数据,然后我们在创建一个db用来保存数据的库

端口默认为:27017

启动服务器(在bin目录):
    mongod --dbpath=..\data\db
    注意黑框再开一个,这个不要关

启动动客户端(在bin目录):
    mongo --host=127.0.0.1 --port=27017

操作命令:
    ①show dbs  #显示所有的库
    ②use 库名  #使用这个库

3.用robo3t操作

​ 概述:是一个操作mongodb的可视化软件

使用:
    这里面表叫做集合Collections,数据叫做文档
    ①新增文档:(文档是一种类似json格式的数据,初学者可以先把数据理解为就是json数据)
        如:db.集合名称.insert/save/insertOne(文档)  #文档就是{}
    ②删除文档:db.集合名称.remove(条件)
    ③修改文档:db.集合名称.update(条件,{操作种类:{文档}})
    ④查询文档:
        基础查询
        查询全部:		   db.集合.find();
        查第一条:		   db.集合.findOne()
        查询指定数量文档:	db.集合.find().limit(10)					//查10条文档
        跳过指定数量文档:	db.集合.find().skip(20)					//跳过20条文档
        统计:			  	db.集合.count()
        排序:				db.集合.sort({age:1})						//按age升序排序
        投影:				db.集合名称.find(条件,{name:1,age:1})		 //仅保留name与age域

        条件查询
        基本格式:			db.集合.find({条件})
        模糊查询:			db.集合.find({域名:/正则表达式/})		  //等同SQL中的like,比like强大,可以执行正则所有规则
        条件比较运算:		   db.集合.find({域名:{$gt:值}})				//等同SQL中的数值比较操作,例如:name>18
        包含查询:			db.集合.find({域名:{$in:[值1,值2]}})		//等同于SQL中的in
        条件连接查询:		   db.集合.find({$and:[{条件1},{条件2}]})	   //等同于SQL中的and、or