Mar 27 16:13:41 localhost systemd[1]: Started MongoDB Database Server.
Mar 27 16:13:42 localhost systemd[1]: mongod.service: Main process exited, code=exited, status=14/n/a
Mar 27 16:13:42 localhost systemd[1]: mongod.service: Failed with result 'exit-code'.
root@localhost:~# systemctl restart mongod
root@localhost:~# systemctl status mongod
● mongod.service - MongoDB Database Server
Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sat 2021-03-27 16:13:55 UTC; 1s ago
Docs: https://docs.mongodb.org/manual
Process: 8778 ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=exited, status=14)
Main PID: 8778 (code=exited, status=14)
Mar 27 16:13:54 localhost systemd[1]: Started MongoDB Database Server.
Mar 27 16:13:55 localhost systemd[1]: mongod.service: Main process exited, code=exited, status=14/n/a
Mar 27 16:13:55 localhost systemd[1]: mongod.service: Failed with result 'exit-code'.
尝试的解决方案:更换所有者
Commands Run
sudo chown -R mongodb:mongodb /var/lib/mongodb
sudo chown mongodb:mongodb /tmp/mongodb-27017.sock
sudo service mongod restart
sudo systemctl status mongod
无论重启或更换所有者,仍然失败
答案1
在我的例子中,我安装了 mongodb 4.0,因此当我删除它但不删除数据时,mongodb 5 无法使用它。这些是我的步骤:
1. sudo tail -40 /var/log/mongodb/mongod.log 并读取一些与 mongodb 相关的日志“此版本的 MongoDB 太新,无法在现有数据文件上启动。尝试 MongoDB 4.2 或更早版本。”
2. cd /var/lib/mongodb 并删除所有项目
3. 运行sudo mongod --repair --config /etc/mongod.conf
4. 运行sudo chown -R mongodb:mongodb /var/lib/mongodb
5. 运行sudo chown mongodb:mongodb /tmp/mongodb-27017.sock
6. 运行sudo systemctl 启动 mongod
7. 跑步sudo systemctl status mongod
如果以上方法不起作用,请尝试以下方法:sudo mongod
一切正常。
答案2
我也遇到了同样的问题。我安装了几次 MongoDB-org,但每次系统重新启动时,它都无法重新启动 MongoDB 服务器。
我发现问题出在启动上。所以我重新安装了 MongoDB-org,如下所示这 文档并没有运行,sudo systemctl enable mongod
这是在启动时自动运行 MongoDB 的。一切正常。
尽管缺点是你每次注销或重新启动系统时都必须启动 MongoDB 服务器sudo systemctl start mongod
。
答案3
所以我创建了一个 data/db 文件夹并立即解决了这个问题