在mongodb修复后增加数据库大小

时间:2015-01-25 23:43:03

标签: mongodb repair database

我过去曾使用mongodb --repair来恢复因文档删除而导致的稀疏空间;但在我的时间里,我从未使用--repair过程增加数据库大小。

我在原始数据上运行了三次修复,并且每次增加DB大小。

我开始使用558 GB数据库。

原始

> db.stats()
{
    "db" : "selfservice",
    "collections" : 4,
    "objects" : 2821806,
    "avgObjSize" : 190351.89918229674,
    "dataSize" : 537136131224,
    "storageSize" : 558518763536,
    "numExtents" : 291,
    "indexes" : 12,
    "indexSize" : 1314422816,
    "fileSize" : 566592798720,
    "nsSizeMB" : 16,
    "dataFileVersion" : {
        "major" : 4,
        "minor" : 5
    },
    "extentFreeList" : {
        "num" : 17,
        "totalSize" : 5067198464
    },
    "ok" : 1
}

...最后得到一个786 GB数据库。

修复

> db.stats()
{
    "db" : "selfservice",
    "collections" : 4,
    "objects" : 2821806,
    "avgObjSize" : 277948.7895397487,
    "dataSize" : 784317562016,
    "storageSize" : 786090391904,
    "numExtents" : 399,
    "indexes" : 12,
    "indexSize" : 1082731328,
    "fileSize" : 789822046208,
    "nsSizeMB" : 16,
    "dataFileVersion" : {
        "major" : 4,
        "minor" : 5
    },
    "extentFreeList" : {
        "num" : 0,
        "totalSize" : 0
    },
    "ok" : 1
}

我的文件计数没有改变

原始

> db.docs.find().count()
2784992

修复

> db.docs.find().count()
2784992

我确实从原始数据库和空间中删除了文件以回收,但为什么数据库大小在--repair我无能为力之后会增加。 维修日志没有说明原因;没有错误,没有问题......只需要分配比原始数据库更多的2GB文件。

有人有任何想法吗?

Mongodb:2.6.7

0 个答案:

没有答案