MongoDB下载与安装教程
1.[官方软件问下载地址]
(https://www.mongodb.com/download-center/community)
2.安装步骤:
这里注意点击Custom进行自定义配置,选择Complete选项则会默认安装GUI,后期安装时进度条会卡住
这里这里将默认Install MongoDB as a Service取消掉,点击Next下一步即可
默认勾选Install MongoDB Compass时记得取消勾选再点击Next,MongoDB Compass是一个图形化界面管理工具,我们可以到官网下载
3.验证是否安装成功
1.在想保存数据文件的路径创建一个data目录,data目录下创建db文件夹
cd到安装目录下的bin目录,运行mongod.exe --dbpath=你的db目录路径,运行成功会出现以下信息:
此时黑屏终端不能关闭,他的启动就代表着一个mongodb数据库的启动
浏览器访问127.0.0.1:27017即可出现以下结果:
3.创建MongoDB配置文件
systemLog:
destination:file
path:D:\Programme\Library\mongodb-win32-x86_64-2012plus-4.2.6\data\log
storage:
dbpath:D:\Programme\Library\mongodb-win32-x86_64-2012plus-4.2.6\data\db
详解:path:路径下需要手动创建log文件夹,并在其目录下手动创建mongod.log文件
dbpath:生成的数据文件路径
4.安装MongoDB服务
mongod.exe --config “D:\Programme\Library\mongodb-win32-x86_64-2012plus-4.2.6\mongod.cfg” --install
注意:–config后有一个空格,新手容易忽略
运行成功会有以下提示:
5.MongoDB启动与关闭:
启动:net start mongodb
关闭:net stop mongodb
当出现指定错误是因为没有正常关闭mongod服务,导致mongod被锁
解决方案:进入db文件夹,删除mongod.lock文件,然后重新启动服务即可
4.零碎知识点
1.概述
- 属于No SQL,全名为Not Only SQL,指的是非关系型的数据库,随着访问量的提升,网站的数据库性能出现了问题,于是nosql被设计出来。
- 由C++语言编写,是一个基于分布式文件存储的开源数据库系统,旨在为WEB应用提供可扩展的高性能数据存储解决方案,在高负载的情况下,添加多的结点,可以保证服务器性能。
- MongoDB将数据存储一个文档(多个键及其关联的数值有序的放置在一起),数据结构由键值(key=>value)对组成。MongoDB文档类似于JSON对象。字段值可以包含其他文档,数组及文档数组。
2.优点
- 高可扩展性,分布式计算,低成本,架构的灵活性,半结构化数据,没有复杂的关系。
- MongoDB提供了一个面向文档存储,基本的思路就是将原来"行"的概念换成更加灵活的"文档"模型。一条记录可以表示非常复杂的层次关系。
- MongoDB支持丰富的查询表达式。查询指令使用JSON形式的标记,可以轻易查询文档中内嵌的对象及数组。
- 非常容易扩展。面对数据量的不断上涨,通常有两种解决方案,一种是购买更好的硬件,另一种是分散数据,进行分布式的扩展,前者有着非常大的缺点,因为硬件通常是有物理极限的,当达到极限以后,处理能力就不可能再进行扩展了。所以建议的方式是使用集群进行扩展。MongoDB所采用的面向文档的数据模型使其可以自动在多台服务器之间进行分割数据。它还可以平衡集群的数据和负载,自动重新排文档。
- 支持Python,C++,Java,PHP,C#,RUBY等多种语言。
- 丰富的功能包括索引,存储JavaScript,聚合,固定剂和,文件存储等。
- 方便的管理,除了启动数据库服务器外,几乎没有什么必要的管理操作。管理集群只需要知道有新增的节点,就会自动继承和配置新节点。
3.缺点
- 没有标准化
- 有限的查询功能(到目前为止)
- 最终一致是不直观的程序
4.与SQL语句对比
| SQL术语 | MongoDB术语 |
|---|---|
| database | database |
| table | collection |
| column | field |
| row | document |
| index | index |
| table joins | – |
| primary key | primary key |
5.列子:{name:“小码陈”, age:20, hobby:[“看书”, “旅游”, “看电影”]}
6.注意
- MongoDB区分类型的大小写
- MongoDB的文档不能有重复的键
- MongoDB集合就是一组文档的组合。如果将文档类比数据库中的行,那么集合就可以类比数据库中的表并且集合是无模式的,也就是说集合中存储的文档的结构可以是不同