我一直在上传带有报告的照片给mongodb。我达到了数据库大小限制。如何增加数据库的大小?
db.stats()
{
"db" : "fieldops",
"collections" : 6,
"objects" : 20454,
"avgObjSize" : 890464.9997066589,
"dataSize" : 18213571104,
"storageSize" : 18432802736,
"numExtents" : 52,
"indexes" : 4,
"indexSize" : 809424,
"fileSize" : 21398290432,
"nsSizeMB" : 16,
"extentFreeList" : {
"num" : 0,
"totalSize" : 0
},
"dataFileVersion" : {
"major" : 4,
"minor" : 22
},
"ok" : 1
}
另外,作为旁白。我现在有12,000张图片,每个月上传一次。我读到mongodb数据文件限制为16,000。我无法在词汇表中找到数据文件的定义。那是指我上传到数据库的缓冲图片吗?那么,一旦发生这种情况,我必须使用分片设置一个单独的服务器?或者我可以在同一台机器上创建一个碎片吗?
提前致谢。
更新
我得到的错误是MongoError: new file allocation failure
。当我上传只有微小照片的数据时,它上传得很好。在服务器上最初使用了14.8GB,总空间为24.7GB。我已经将总空间增加了一倍。
更新2
它与数据库无法看到虚拟内存有关。所以,这不是一次真正的扩张。不确定这究竟是什么意思,但这就是Sys Admin告诉我的。 : - /
答案 0 :(得分:1)
如果mongodb服务器可用,它将自行申请更多磁盘空间 - 无需对其进行任何操作。至于16KB的文件限制,即集合中每个文档的文件限制。您可以轻松拥有数百万个或更多文档的集合。