【限制mongodb内存的使用】默认情况下,mongodb占用的内存大小为:
Starting in 3.4, the WiredTiger internal cache, by default, will use the larger of either:50% of RAM minus 1 GB, or
256 MB.
即 (总内存 × 50% - 1GB) 和 (256MB) 两者中的较大值。
由于mongodb会占用较大内存,所以生产环境一般会将mongodb单独托管。
特殊情况下,比如调试开发环境,或只有一台服务器,则可以限制mongodb的内存。
新增配置文件 /etc/mongod.conf
storage:
dbPath: /var/lib/mongodb
journal:
enabled: true
#engine:
mmapv1:
smallFiles: true
wiredTiger:
engineConfig:
configString : cache_size=160M
然后以配置文件的方式启动
mongod -f /etc/mongod.conf --fork --logpath=/etc/mongodb.log
启动后用top命令检查内存使用情况。
其他方式:
https://www.techpaste.com/2016/04/limit-mongodb-memory-usage/
停止mongod
killall mongod
检查进程
ps -ef|grep mongod | grep -v grep
推荐阅读
- 故障分析 | MongoDB 5.0 报错 Illegal instruction 解决
- MongoDB find getmore操作慢问题排查
- mongodb 6、mongodb内存使用优化
- MongoDB内存使用原理
- mongodb 内存
- 【MongoDB】如何将MongoDB改造成内存数据库
- mongodb|mongodb分页排序获取数据 导致超出32M限制
- Mongodb中FAQ整理
- Mongodb 内存问题
- mongodb 内存泄露的bug, v2.0.3中还依然存在