20

数日前に mongodb レプリカ セットをセットアップし、少しテストを行ったところ、すべて正常に動作しました。今日、そのローカル コレクションが 24G に成長したことを発見しました !!!

rs0:PRIMARY> show dbs
local   24.06640625GB
test    0.203125GB

「oplog.rs」を除いて、他のコレクションは正常に見えます。

rs0:PRIMARY> db.oplog.rs.stats()
{
    "ns" : "local.oplog.rs",
    "count" : 322156,
    "size" : 119881336,
    "avgObjSize" : 372.12200300475547,
    "storageSize" : 24681987920,
    "numExtents" : 12,
    "nindexes" : 0,
    "lastExtentSize" : 1071292416,
    "paddingFactor" : 1,
    "systemFlags" : 0,
    "userFlags" : 0,
    "totalIndexSize" : 0,
    "indexSizes" : {

    },
    "capped" : true,
    "max" : NumberLong("9223372036854775807"),
    "ok" : 1
}

これは私のmongodb.confです

dbpath=/data/db

#where to log
logpath=/var/log/mongodb/mongodb.log
logappend=true
port = 27017
fork = true
replSet = rs0

どうすれば解決できますか?どうもありがとう。

4

1 に答える 1

21

プライマリでの操作の進行中のログを保持し、レプリケーション メカニズムに使用される oplog は、デフォルトで、使用可能な空きディスク容量の 5% で割り当てられます (Mac OS X または Windows ではなく、Linux/Unix システムの場合)。したがって、空きディスク容量が多い場合、MongoDB は大きな oplog を作成します。つまり、たとえば、任意の時点に復元できる時間枠が大きくなります。oplog が最大サイズに達すると、単純にロールオーバーします (リング バッファー)。

oplogSizeオプションを使用してデータベースを初期化するときに oplog のサイズを指定できます。http://docs.mongodb.org/manual/core/replica-set-oplog/ を参照してください。

結論: ディスク容量が本当に不足していない限り (実際にはそうではないようです。そうでなければ、oplog はそれほど大きく作成されませんでした)、心配する必要はありません。追加のセキュリティを提供します。

于 2013-09-27T21:31:32.403 に答える