0

有没有办法防止 mongod 在日志文件夹中预先分配这些 100 MB 文件?

WiredTigerPreplog.0000000001 WiredTigerPreplog.0000000002

我希望启用日记功能。

4

2 回答 2

0

在下面查找 MongoDB日志记录文档中的一些注释

WiredTiger 将预先分配日志文件。

预分配滞后

如果 mongod 进程确定预分配日志文件比根据需要创建新的日志文件更有效,则 MongoDB 可能会预分配日志文件。

在启动 mongod 时,仅使用--noprealloc选项的 MMapv1 存储引擎可以避免预分配。但这不适用于wiredtiger存储引擎。

更多参考资料

WiredTigerPreplog 文件的含义

于 2019-03-01T21:26:28.647 回答
0

我经常需要运行 mongod 的测试实例,而这些预分配的 WiredTiger 日志(日志)文件每次只浪费 200MB。

可以通过将此参数添加到mongod命令行来禁用它们:

--wiredTigerEngineConfigString 'log=(prealloc=false)'

或者这个到你的mongod.conf文件:

storage:
    wiredTiger:
        engineConfig:
            configString: log=(prealloc=false)

当然,这不应该在生产环境中进行,只有在测试与日志无关的东西时才应该这样做。日志文件预分配是一种经过深思熟虑的性能特性,这在现实世界中几乎总是一种胜利(这也是它默认为 的原因true)。

于 2022-01-27T01:45:32.693 回答