以下资料均来自官网或源代码的说明文件
MongoDB 是一款基于文档的通用分布式数据库
由 C++ 语言编写,MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
如何编译?
不说废话,直接开始上手。首先其官网网址为https://www.mongodb.com/
点击try free即可下载其源码和对应平台二进制
官网server版最新为4.2.0
但github上有更新的版本https://github.com/mongodb
通过git clone即可。目录如下
根据github上的readme可以看到,在./docs目录下,有building.md文件,这里面有着相关教程教授如何编译。在4.1.0版本,是可以通过cmake或python2.7的scons脚本去编译他,但在我自己编译的时候,总是因为各种各样的问题导致编译失败。因此选择了最新的github上的master版本。
而在最新版里,只有通过python3.7环境下的scons脚本去编译。在building.md文件里,有着编译的步骤,我在这里写一些注意事项。
在windows平台上,是使用msvc作为编译环境,因此最简单的办法就是安装最新版的VS,并且将C++套件全部选满。然后直接按照文档里面的指令开始即可。但如果需要用MinGW作为编译环境,可以参考这个网址
http://www.it1352.com/540290.html
如果在编译过程中出现报msvc的错,错误信息是说它把warn当成error处理了这样的报告,请参照下面
还有一点注意的是空间大小。MongoDB的源码分为
这些部分,全部编译下来大概600多G,就是直接用python3 buildscripts/scons.py all
这条指令的话,但实际上,我们只需要编译mongod即可,编译下来大概13G,但时间也很长,我i5七代,16g的内存大概跑了3,4个小时。