我已经将mongodb(v3.6.8)用于我的服务器(Ubuntu20.04),多年来它运行良好。最近,系统运行了几天之后,它被杀死并无法重新启动。我重新启动sysemd,它工作了几个小时,然后又死了。请参阅系统状态:
$ systemctl status mongodb
● mongodb.service - An object/document-oriented database
Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
Active: failed (Result: signal) since Sat 2022-05-14 22:15:09 UTC; 5h 51min ago
Docs: man:mongod(1)
Process: 2463713 ExecStart=/usr/bin/mongod --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS (code=killed, signal=KILL)
Main PID: 2463713 (code=killed, signal=KILL)有人知道怎么解决这个问题吗?
更新日志:
$ sudo journalctl -u mongodb.service
-- Logs begin at Wed 2022-05-11 06:03:08 UTC, end at Sun 2022-05-15 04:55:05 UTC. --
May 14 13:01:23 localhost systemd[1]: mongodb.service: Main process exited, code=killed, status=9/KILL
May 14 13:01:23 localhost systemd[1]: mongodb.service: Failed with result 'signal'.
May 14 17:29:35 localhost systemd[1]: Started An object/document-oriented database.
May 14 22:15:09 localhost systemd[1]: mongodb.service: Main process exited, code=killed, status=9/KILL
May 14 22:15:09 localhost systemd[1]: mongodb.service: Failed with result 'signal'.
May 15 04:10:53 localhost systemd[1]: Started An object/document-oriented database.更新: cmd "dmesg -T“显示原因是内存不足。
[Sat May 14 22:15:05 2022] Out of memory: Killed process 2463713 (mongod) total-vm:2486640kB, anon-rss:1133764kB, file-rss:0kB, shmem-rss:0kB, UID:112 pgtables:3240kB oom_score_adj:0发布于 2022-05-15 08:38:42
使用dmesg -T显示了系统杀死mongodb的原因(在问题部分中更新),这是因为"ot ouf memory“。当我的服务器为16 GB时,Mongodb消耗2486640kB,因此mongodb不会占用太高的内存。
失败是因为其他程序占用太多内存,这不是mongodb问题
发布于 2022-05-15 11:10:11
您可能需要减少wiredTiger cacheSizeGB,以避免单神被配置为高内存用户并意外地被操作系统杀死.考虑到您只有16 8GB内存,如果您没有设置此选项,它将在您的mongod.conf文件中分配一半内存(8GB),您可以将其减少如下:
storage:
wiredTiger:
engineConfig:
cacheSizeGB: 4在减少缓存大小后,会影响查询的执行时间.
https://stackoverflow.com/questions/72245560
复制相似问题