一、MongoDB简介及安装
一、简介及安装
1、MongoDB相关概念
1.1 应用场景及特点
- 数据量大
- 写入操作频繁(读写都很频繁)
- 价值较低的数据,对事物要求不高
对这样的数据,我们更适合使用MongoDB来实现数据的存储
1.2 简介
MongoDB是一个开源、高性能、无模式的文档型数据库,当初的设计就是用于简化开发和方便扩展,是NoSql数据库中的一种。是最像关系型数据库(MySQL)的非关系型数据库。
它支持的数据结构很松散,是一种类似于JSON的格式叫BSON(二进制的json),所以它既可以存储比较复杂的数据类型,又相当灵活。
MongoDB的每条记录都是一个文档,它是由一个字段和值对(field:value)
组成的数据结构。MongoDB文档类似于JSON对象,即一个文档认为就是一个对象。字段的数据类型是字符型,它的值除了使用基本类型之外,还可以包括其他文档、普通数组和文档数组。
1.3 体系结构
MySQL和MongoDB的类比
1.4 数据模型
BSON数据类型参考列表
1.5 主要特点
(1)高性能:
MongoDB提供高性能的数据持久性。
特别是,对嵌入式数据模型的支持减少了数据库系统上的I/O活动。
索引支持更快的查询,并且可以包含来自嵌入式文档和数组的键。(文本索引解决搜索的需求、TTL索引解决历史
数据自动过期的需求、地理位置索引可用于构建各种O2O应用)
mmapv1、wiredtiger、mongorocks(rocksdb)、in-memory等多引擎支持满足各种场景需求。
Gridfs解决文件存储的需求。
(2)高可用性:
MongoDB的复制工具称为副本集(replica set),它可提供自动故障转移和数据沉余。
(3)高扩展性:
MongoDB提供了水平可扩展性作为其核心功能的一部分。
分片将数据分布在一组集群的机器上。(海量数据存储,服务能力水平扩展)
从3.4开始,MongoDB支持基于片键创建数据区域。在一个平衡的集群中,MongoDB将一个区域所覆盖的读写只
定向到该区域内的那些片。
(4)丰富的查询支持:
MongoDB支持丰富的查询语言,支持读和写操作(CRUD),比如数据聚合、文本搜索和地理空间查询等。
(5)其他特点:
如无模式(动态模式)、灵活的文档模型等
2.Windows环境下安装部署
MongoDB提供了可用于32位和64位系统的预编译二进制包,可以从MongoDB官网下载安装,MongoDB预编译二进制包下载地址:http://www.mongodb.org/downloads
根据上图所示下载zip包;注意:MSI需要安装的,ZIP是绿色版本解压就可以运行。
提示:版本的选择:
MongoDB的版本命名规范如:x.y.z;
y为奇数时表示当前版本为开发版,如:1.5.2、4.1.13;
y为偶数时表示当前版本为稳定版,如:1.6.3、4.0.10;
Z是修正版本号,数字越大,修复的BUG越多,越推荐使用。
2.1先创建数据库文件存储位置
解压MongoDB后,在MongoDB下创建data,在data下再创建db:D:\java\MongoDB\mongodb-win32-x86_64-2012plus-4.2.3\data\db
因为启动服务之前必须要先创建数据库文件的存放文件夹,否则命令不会自动创建,无法启动成功。
2.2启动服务
- 方式1:命令行参数方式启动服务
在bin目录下打开命令行提示符,输入如下命令:
在启动信息中可以看到,mongodb默认端口是27017
,如果更改默认启动端口,可通过--port来指定端口。
为了方便每次启动,可以将安装目录的bin目录添加到环境变量的path中。
- 方式2.配置文件方式启动服务
在mongdb目录下新建配置文件mongod.cfg,内如如下:
#数据库路径
dbpath=D:\java\MongoDB\mongodb-win32-x86_64-2012plus-4.2.3\data\db
#日志输出文件路径
logpath=D:\java\MongoDB\mongodb-win32-x86_64-2012plus-4.2.3\data\log\mongo.log
#错误日志采用追加模式
logappend=true
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
#端口号 默认为27017
port=27017
启动方式:进入bin目录打开命令窗口
执行mongod -f ../mongod.cfg
或mongod --config ../mongod.cfg
日志被记录到指定文件夹
- 方式3:加入到服务列表
管理员运行cmd (必须是管理员启动cmd.exe,否则服务安装失败)
mongod --config "D:\java\MongoDB\mongodb-win32-x86_64-2012plus-4.2.3\mongod.cfg" --install --serviceName "MongoDB"
安装成功后启动运行。
我们可以在浏览器输入http://localhost:27017来看是否启动成功
2.3客户端连接
2.3.1 shell终端连接MongoDB服务(mongo命令)
# 进入mongdb的bin目录,打开cmd命令窗口,连接MongoDB服务
mongo
mongo --host=127.0.0.1 --port=27017
# 查看已有数据库:
show databases
# 退出
exit
2.3.2 compass图形化界面
下载地址:https://www.mongodb.com/download-center/compass
还是选择绿色解压版,解压后双击MongoDBCompassCommunity.exe
启动
连接成功后可以看到三个库,好处就是可以很轻松的通过可视化的方式去操作