ubuntu

MongoDB在Ubuntu上的内存设置是多少

小樊
33
2025-11-02 20:09:00
栏目: 云计算

MongoDB在Ubuntu上的内存设置说明

一、核心内存配置参数

MongoDB在Ubuntu上的内存设置主要围绕WiredTiger存储引擎(默认引擎)的缓存大小调整,关键参数为:
storage.wiredTiger.engineConfig.cacheSizeGB(单位:GB)。该参数决定了MongoDB用于缓存数据和索引的内存上限,直接影响查询性能(缓存命中率越高,性能越好)。

二、内存设置推荐值

  1. 通用场景建议
    多数官方及运维建议将cacheSizeGB设置为系统总物理内存的50%-70%(如8GB内存的服务器,可设置为4-5.6GB)。此范围既能保证MongoDB充分利用内存提升性能,又能避免占用过多内存导致操作系统或其他进程因内存不足而使用交换空间(swap),进而引发性能下降。
  2. 8GB内存单机示例
    针对8GB内存的Ubuntu单机环境,推荐将cacheSizeGB设置为4-6GB(占总内存的50%-75%),具体可根据应用负载调整。

三、配置修改步骤

  1. 编辑配置文件
    使用文本编辑器(如nano)打开MongoDB配置文件/etc/mongod.conf
    sudo nano /etc/mongod.conf
    
  2. 修改内存参数
    storage section下添加或修改wiredTiger.engineConfig.cacheSizeGB,例如设置为4GB:
    storage:
      dbPath: /var/lib/mongodb
      journal:
        enabled: true
      wiredTiger:
        engineConfig:
          cacheSizeGB: 4  # 设置为4GB
    
  3. 重启服务生效
    保存配置文件后,重启MongoDB服务使更改生效:
    sudo systemctl restart mongod
    

四、验证设置是否生效

可通过MongoDB shell查看WiredTiger缓存状态,确认cacheSizeGB是否设置成功:

mongo
> use admin
> db.serverStatus().wiredTiger.cache

输出结果中的bytes dirty(脏页字节数)、bytes valid(有效缓存字节数)等指标可反映缓存使用情况。

注意事项

0
看了该问题的人还看了