前言:由于项目组需要进行大数据管理分析系统的开发,同时又希望所用的到相关软件和库均为开源,因此项选择使用mongodb这一非关系型,结构组织较为灵活的开源数据库。同时之所以写该文档,主要是认为网上太多杂乱的操作教程和无意义的废话,因此我对整个部署教程进行了整理,在操作步骤部分尽可能少废话。
一、mongodb基本特性
对开发者而言,选择mongodb需要了解其与其他数据库相比较而言的优越特性,由于本文主要介绍mongodb在windows环境下的部署,因此这里只简单介绍几点特性。
1、数据组织灵活
Mongodb数据库是基于文档进行存储,而不是基于的表格,其存储单元为类似与json的bson格式,是一种灵活的弱类型结构。如果用户需要将数据进行存储,完全不需要知道数据组织结构,仅仅将数据以json格式入库即可。其基本思路就是将原来"行"(row)的观念转化为更加灵活的"文档"(document)模型。面向文档的方式可以将文档或者数组内嵌进来,用一条记录表示非常复杂的层次关系。
2、易扩展
由于应用数据集的大小增长很快,对大数据的存储成为当下亟待解决的问题。开发者要存储的数据不断增长,就会面临选择:是升级数据库(买台更好的服务器),还是扩展数据库(将数据分散到很多的机器上)。通常升级数据库是最省力气的做法,但价格不菲。但是扩展不但经济而且还能持续增加:想要增加存储空间或者提升性能,只需要买台一般的服务器加入到集群中。MongoDB最初的设计就考虑了扩展的问题,它所采用的面向文档的数据模型使其可以自动在多台服务器间分割数据,并平衡集群的数据和负载。
3、高性能
MongoDB对文档进行动态填充,预分配数据文件,用空间换取性能的稳定。其默认的存储引擎中使用了内存映射文件,并将内存管理工作交给操作系统去处理,动态查询优化器会"记住"执行查询最高效的方式。虽然MongoDB功能强大,并保持这关系型数据库的众多特性,但它尽可能的将服务器处理逻辑交给客户,这样精简的设计使得MongoDB具有很高效的查询性能。
二、mongodb环境部署
1、软件下载
https://www.mongodb.com/download-center#community;
64位Win8、Win7以及windows最新版:MongoDB for Windows 64-bit
32位的Windows操作系统、windows Vista:MongoDB for Windows 32-bit
64 位的indows Vista, Windows Server 2003、2008:MongoDB for Windows 64-bit Legacy
2、自定义安装Custom
选择安装路径D:\MongoDB;
3、创建文件夹
分别创建d:\ MongoDB\data\db、d:\ MongoDB\data\dbConf文件夹,同时创建d:\ MongoDB\data\dbConf\mongdb.log文件;
前者分别用来安装db数据库文件和日志文件,后者用于存储mongdb服务运行时的日志信息。
4、在命令行下启动服务器
运行cmd.exe进入dos命令界面,执行下列命令(具体文件位置按照自己安装的文件夹进行设置)。
> cd D:\MongoDB\Server\3.4\bin
> D:\MongoDB\Server\3.4\bin>mongod -dbpath "d:\MongoDB\data\db"
访问http://127.0.0.1:27017/,有界面显示,则启动成功;
5、将MongoDB服务作为Windows服务运行(注意命令中都需要空一格,可能会由于复制导致格式错乱,谨记!)
当mongod.exe被关闭时,mongo.exe 就无法连接到数据库了,因此每次想使用mongodb数据库都要开启mongod.exe程序,所以比较麻烦,此时我们可以将MongoDB安装为windows服务。管理员权限运行cmd.exe进入dos命令界面,执行下列命令。
> cd D:\MongoDB\Server\3.4\bin
> d:\mongodb\bin> mongod --logpath "D:\MongoDB\data\dbConf\mongodb.log" --logappend --dbpath "D:\MongoDB\data\db" --serviceName "MongoDB" --serviceDisplayName "MongoDB" --directoryperdb --install
在服务中查看是否存在MongoDB,存在即安装成功。
如果后续需要将数据库设置为安全模式(需要用户名密码进行验证),则需要先关闭服务,然后在cmd命令行窗口下执行以下命令即可重新安装。
> cd D:\MongoDB\Server\3.4\bin
> d:\mongodb\bin>mongod --auth --logpath "D:\MongoDB\data\dbConf\mongodb.log" --logappend --dbpath "D:\MongoDB\data\db" --serviceName "MongoDB" --serviceDisplayName "MongoDB" --directoryperdb --reinstall
Ps:第5小章蓝字按照自己的路径填写,分别为 mongodb日志文件、mongodb的db文件位置,将MongoDB作为windows服务的名称,在系统中显示的服务名称(用于区别,当存在多个mongodb服务)。
三、小结
至此,mongodb的基本环境已配置成功,但环境配置仅仅是使用mongdb最基础的部分,后续我也将继续针对mongodb在工程中的实际应用,持续更新一些技术和信息,比如mongdb的一些语法知识;在java后台,前端服务器上如何使用mongodb;以及如何进行分布式的mongdb环境部署和操作。另外,为了方便大家对mongodb这里推荐使用robotmongdb作为mongodb的可视化工具,界面展示效果非常友好,易于上手,同时是免费的GUI工具。