Linux更新后MongoDB无法启动,报MongoNetworkError错误求助
解决MongoDB更新Linux后无法启动(pid文件写入失败)的问题
问题核心
系统更新后/var/run/mongodb目录被清理,MongoDB服务启动时无法写入mongod.pid文件,导致启动失败并触发start-limit限制。
临时修复步骤
- 创建缺失的pid文件存放目录:
sudo mkdir -p /var/run/mongodb - 配置正确的权限(匹配MongoDB运行用户):
sudo chown mongodb:mongodb /var/run/mongodb sudo chmod 0755 /var/run/mongodb - 重启MongoDB服务:
sudo systemctl restart mongod - 验证服务状态:
sudo systemctl status mongod
持久化解决(避免重启系统后重复出现)
由于/var/run属于临时文件系统,重启后目录会消失,可通过systemd配置自动创建:
- 创建tmpfiles配置文件:
sudo tee /etc/tmpfiles.d/mongodb.conf <<EOF d /var/run/mongodb 0755 mongodb mongodb - EOF - 立即应用配置:
sudo systemd-tmpfiles --create /etc/tmpfiles.d/mongodb.conf
完成以上操作后,MongoDB服务应该能正常启动,使用mongosh连接也不会再出现ECONNREFUSED错误。
内容的提问来源于stack exchange,提问作者Dmytro V
相关产品推荐
相关产品推荐

