2

我将 mongodb 2.0 用于我的开发环境。我正在通过配置文件使用以下配置启动 mongodb。

replSet = ubsc
fork    = true
port    = 27017
dbpath  = /data/mongodb
logpath = /data/mongodb/mongodb.log
rest = true
smallfiles = true

我的问题是,即使我通过在我的配置文件中设置 (smallfiles = true) 来设置为日志生成小文件的选项。

我只访问了应用程序5分钟,(5-10分钟),日志文件夹内的文件已经增长到一个巨大的大小

[mark_user@ubsdvf.oitreo.com journal]$  ls -lrt
total 393632
-rw------- 1 s606970 s606970 134217728 Oct 21 07:41 prealloc.1
-rw------- 1 s606970 s606970 134217728 Oct 21 07:46 prealloc.2
-rw------- 1 s606970 s606970        88 Oct 21 08:42 lsn
-rw------- 1 s606970 s606970 134217728 Oct 21 08:42 j._0

请让我知道为什么文件会变得很大?

4

2 回答 2

3

启用后重新启动 mongodb 服务器后smallfiles,它将仅适用于新数据库。任何现有数据库都不会受到此配置的影响。

通过创建一个新数据库来测试此配置。

此外,文档中提到启用此配置会影响性能。

The smallfiles setting can lead mongod to create many files, which may affect performance for larger databases.

所以谨慎使用

于 2013-10-21T13:44:47.880 回答
2

我只访问了应用程序5分钟,(5-10分钟),日志文件夹内的文件已经增长到一个巨大的大小

好吧,文件不是那么大(无论如何都不是 mongodb)。启用 smallfiles 后,日志文件大小将设置为 128MB(确切地说是 134217728 字节),而不是默认的 1GB。

所以它并不是因为它变得如此庞大。这是使用 smallfiles 选项时的默认(预分配)日志文件。

于 2013-10-21T16:24:07.227 回答