背景
我设置了replicaSet并使用不同的端口在localhost上启动了mongod的3个实例(1 arbiterOnly)。
我没有注意到mongo正在创建数量和大小太多的文件,这根本没有意义。
请参阅没有数据插入到mongodb中,没有创建单个集合,然而,让它运行一个小时左右,我的/ data / DB_INSTANCE_X已经满了2GB文件
我知道可以使用预分配标志定义文件的大小,但在输入单个文档之前,这么多文件对我来说似乎不对。
答案 0 :(得分:5)
听起来它正在为oplog预分配空间。无论您将哪些内容插入数据库http://www.mongodb.org/display/DOCS/Excessive+Disk+Space:
,都会分配oplog复制oplog预先分配为。中的上限集合 本地数据库。
默认分配大约是磁盘空间的5%(64位 安装)。
如果您想要更小的oplog大小,请使用--oplogSize command line parameter。
答案 1 :(得分:0)
我发现有各种命令行参数可以减少空数据库的大小。
已经提到:
--oplogSize <value>
此外:
--smallfiles
--nssize <value>
所有3个参数的组合构成了一个18mb空的数据库(针对MongoDB 64bit,Windows 7进行了测试)。