MongoDB - 无法将 mongodb 存储引擎更改为 WiredTiger

ng.*_*bie 4 mongodb storage-engine

我已经在 Ubuntu 14.04 中安装了 MongoDB,但我无法将其存储引擎更改为 WiredTiger。

我已经向 /etc/mongod.conf 文件添加了必要的更改,即如下所示:

storage:
  dbPath: /var/lib/mongodb
  journal:
    enabled: true
  engine: wiredTiger
Run Code Online (Sandbox Code Playgroud)

我已经使用以下命令启动了 mongod 进程:

mongod - f /etc/mongod.conf

服务器启动了,但是当我连接到我的 shell 时仍然收到警告-:

2017-01-10T15:36:54.866+0530 I STORAGE  [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么吗?这些变化似乎没有效果。

Ste*_*nie 5

根据您的描述中包含的警告消息,您已经在使用 WiredTiger 存储引擎,但您dbPath正在使用 ext 文件系统(理论上是 ext4,但 Linux文件系统幻数不区分 ext2/ext3/ext4)。注意:WiredTiger 是 MongoDB 3.2+ 的默认存储引擎,因此无需在您的配置文件中指定它。

此警告是根据SERVER-22606为 MongoDB 3.4 生产版本添加的:启动警告 if ext4 is used with WiredTiger。ext4 存在一些已知的性能问题(特别是周期性停顿),因此此警告旨在主动确保管理员收到潜在问题配置的警报。文件系统和其他生产警告也包含在MongoDB 手册的生产注释中。

要抑制此警告,您可以:

  • 将您dbPath的文件系统托管在 ext4 以外的受支持文件系统上(建议使用 XFS)
  • mongo--quiet参数启动你的shell (这可能会抑制其他有趣的启动信息/警告)

您当然可以选择忽略启动警告(特别是对于开发环境),但如果这是生产环境,则应考虑将 XFS 与 WiredTiger 一起使用。

您可能想要观看/投票SERVER-19790:提供清除/确认启动警告的机制,这可以允许启动警告被确认,因此它们不会出现在每个新mongo会话中。