3

最近我扩展了我的服务器的存储大小。其他一切工作正常,但我无法通过sudo service mongodb start. 我输入此命令后,它提示mongodb start/running, process 1279. 看起来不错。但是当我检查服务的状态时,它显示服务没有运行。所以我检查了mongodb.log. 我发现服务会启动,一段时间后,服务进程会收到一个信号 2: Thu Jun 6 06:09:06.963 got signal 2 (Interrupt), will terminate after current cmd ends

我还尝试将 mongodb 配置为输出更详细的日志,但如果中断,它并没有帮助我找出来源。

现在我只能用sudo mongod --config /path/to/conf_file. 任何人都知道如何解决它?谢谢!

4

1 回答 1

0

我所做的是确保 /var/lib/mongodb/ 文件夹(或 dbpath 指向的任何文件夹)中的所有文件和目录都属于 mongodb 用户和 mongodb 组。

cd /var/lib/mongodb/
sudo chown -R mongodb *
sudo chgrp -R mongodb *

然后你可以移除锁,修复数据库并重启守护进程:

sudo rm /var/lib/mongodb/mongod.lock   
sudo -u mongodb mongod --config /etc/mongodb.conf --repair 
sudo service mongodb start
于 2014-08-22T22:02:04.330 回答