Linux启动mongod,报{"exitCode":100}错误

1,464 阅读1分钟

一、bug说明

{"t":{"$date":"2021-11-22T11:20:06.858+08:00"},"s":"I",  "c":"CONTROL",  "id":23138,   "ctx":"initandlisten","msg":"Shutting down","attr":{"exitCode":100}}

二、原因分析

在mongodb的启动时,在数据目录下,会生成一个mongod.lock文件。如果在正常退出时,会清除这个mongod.lock文件,若要是异常退出,在下次启动的时候,会禁止启动,从而保留一份干净的一份副本数据。有人可能会想到删除这个文件,建议请不要这么做。如果这么做,我们也不知道数据文件是否会损坏,如果mongod.lock文件阻止mongod的启动,请对数据文件进行修复,而不是简单的删除该文件。而这里的mongod.lock文件存放的是:启动mongod的进程号. 可参考文章 mongodb的mongod.lock文件及oplog文件_weixin_30289831的博客-CSDN博客

三、解决方案

code100出现的原因是mongodb数据库之前关闭时非正常关闭,导致db目录下的mongodb.lock文件有问题,删掉这个文件重启就正常了 image.png 启动mongodb命令

mongod --dbpath /usr/local/mongodb4/db --logpath /usr/local/mongodb4/log/mongod.log --fork

image.png