MongoDB安装配置
本章作者在首次实现MongoDB 让我们了解一下~
1、MongoDB介绍
MongoDB是为快速开发互联网Web应用而设计的数据库系统。
MongoDB的设许目标是极简、灵活、作为Web应用栈的一部分。
MongoDB的数据模型是面向文档的, 所谓文档是一种类似于JSON的结构,简单理解MongoDB这个数据库中存的是各种各样的JSON。
MongoDB的特点是高性能、易部署、易使用,存储数据非常方便
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
2、MongoDB中三个概念
数据库( database ):数据库是一个仓库,在仓库中可以存放集合。
集合( collection ):集合类似于数组,在集合中可以存放文档。
文档( document ):文档数据库中的最小单位,我们存储和操作的内容都是文档。
3.MongoDB优势
mongodb的优势就是文档存储:
1. 业务经常变动,需要不时的添加字段,那么mongodb比较适合,关系型数据库添加字段的复杂度也还好
2. 嵌套文档,业务数据比较复杂,适合嵌套文档式存储,那么mongodb非常合适,这个关系型数据库比较难搞,虽然MySQL和pg也有文档存储,但MySQL的不成熟,pg毕竟现在生产中使用还是偏少,个人也不了解,这里不谈。但这不仅仅这一点优势,具体下面会细说。
3. upsert支持,查询速度也不慢
4. 高可用的副本集支持
5. 查询语法非常丰富,嵌套文档查询功能非常强大,不是重度用户可能不能理解
下面说说一个具体的使用事例:
如果项目的一条数据在10kb左右,使用关系型数据库那么需要将这条数据拆分成大概几百条左右,建造多个表,设计较复杂。这种数据大概在一百万条左右,想想拆分后在十几亿的数据量就可怕。打平后的数据什么DB也都可以拿下,只是一百万变十几亿比较恐怖而已。
如果采用MySQL存储,每次查询需要使用外键查询多个表,从这些表中拉取数据,性能肯定要下降很多,比不上只在一个表查询,而且只拉取少两个数量级的数据。查询也还好,业务允许可以对结果做缓存,放到redis里去。
但是重点来了,需求要增量更新部分数据,这时候需要更新多个表,根本没法做到原子性(注意事务不是原子操作),当然也可以使用cas等技术补偿,达到最终一致性。但使用mongodb存储只需要update一条数据,对相应的嵌套文档中内容更新,可以做到原子性,是不是很方便?
具体说说该项目的难点,查询无法使用缓存,可能会很吃惊,但是业务决定了确实做不了,而且增量更新的量达到上万的QPS,如果不能保证原子性想想多么可怕!
所以mongodb在这里帮了大忙,关系型数据库解决不了这个难题。
4.MongoDB缺点
1. 查询优化器和MySQL没法比
2. 不支持reload,只能冷重启,初始化配置的时候比较麻烦
3. 没有事务,不敢存储第一手数据,多用来做备份数据的存储
首先我们进行安装配置
第一步
下载MongoDB
官网会自动匹配下载版本号
Download MongoDB Community Server | MongoDB
进行安装
第一 打开进行安装目录
即:你可以通过选择安装到 ‘E盘’ 或 ‘D盘’ 等你自己建的文件夹的位置上;
第二、该步骤直接默认是 'Run service as Network Service user’即可,虽然我也查了文档,但默认这样安装是没有问题的;
第三、这里一定要取消勾选,先不安装图形化工具,否则时间非常非常长;
(千万不要勾选,以过来者的身份劝你);
第四、MongoDB 数据库的安装就结束了;
第五,查看安装情况
刚安装好的没有mongo.config 自己新建一个 然后进行配置
dbpath=D:\mongoDB\data\db #数据库路径
logpath=D:\mongoDB\data\log\mongod.log #日志输出文件路径
logappend=true #错误日志采用追加模式
journal=true #启用日志文件,默认启用
quiet=true #过滤掉无用的日志信息,若需要调试使用请设置为false
port=27017 #端口号 默认为27017
第二步
配置 MongoDB 数据库的环境
第一.首先要找到,高级系统设置;
一般的操作为:找到此电脑,然后右击,选择高级系统设置;
或者在设置里面,直接搜索:高级系统设置;
第二.打开环境变量:
找到 path,并打开路径,将自己的 MongoDB 的 bin 文件地址添加上去;
将文件解压缩移动到mongoDB文件中中 将路径也添加进去
第三步
运行 MongoDB 服务
1、创建数据库文件的存放位置
在你data的目录下,创建一个db文件; 类似于:‘D:\mongoDB\data\db’;
因为启动 MongoDB 服务之前需要必须创建数据库文件的存放文件夹,否则命令不会自动创建,而且不能启动成功;
2、启动 MongoDB 服务
其一、打开 cmd 命令;
即:用Win+R键打开,输入cmd;
其二、找到安装 MongoDB 的 bin 文件;
其三、管理员运行 输入命令,来启动MongoDB 服务;
其四、然后再浏览器中输入地址和端口号为:
http://localhost:27017
若显示结果如下,就说明安装成功并结束;
其五、如何结束服务
一般是按两次的 ‘Ctrl + C’,就结束了该次进程;
第四步
配置本地 Windows MongoGB 服务
1、在 data 文件下创建新文件夹log;(用来存放日志文件)
2、在 MongoGB 中新建配置文件 mongo.config; (与 bin 目录同级)(上边已经设置过了)
3、用管理员身份打开 cmd,然后找到 bin 文件地址为:"D:\mongoDB\bin ‘’,并输入代码为:mongod -dbpath "D:\mongoDB\data\db" -logpath "D:\mongoDB\log\mongod.log" -install -serviceName "MongoDB";
而命令中的 ‘MongoDB’ 就是之后启动 MongoDB 服务的名字;
注意:这个一定在管理员身份的 cmd 中运行,否则执行下面命令会一直报错;
输入相关的命令,然后本地 Windows MongoGB 服务的配置就完成了;
4、在cmd 管理员中启动和关闭 MongoDB 服务
其一、启动 MongoDB 命令为:net start MongoDB3
其二.在 MongoDB 服务启动后,会在设置中的服务看到正在运作的 MongoDB 服务;
打开设置中服务的过程:在 cmd 中输入命令:services.msc
其三、关闭 MongoDB 命令为:net stop MongoDB
然后再浏览器中输入地址和端口号为:
若显示结果如下,就说明 MongoDB 服务已结束;
到这里我们基本已经配置ok了可以进行使用啦
下一章引用到php laravel框架进行使用!!!
