问题描述
我刚刚在ubuntu 14.0.4上安装了mongoDB。我试图启动 shell 程序,但出现连接拒绝错误。
me@medev:/etc/init.d$ mongo
MongoDB shell version: 2.6.5
connecting to: test
2014-11-10T15:06:28.084-0500 warning: Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused
2014-11-10T15:06:28.085-0500 Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146
exception: connect failed
因此,我决定尝试重新启动服务,但这也失败了。我收到以下错误消息:
me@medev:/etc/init.d$ sudo service mongodb restart
mongodb: unrecognized service
me@medev:/etc/init.d$
这就是我的/var/log/mongodb/mongod.log中的内容-http://pastebin.com/MrHt8tce
到目前为止我尝试过的是:
我在这里找到了另一篇文章:can’t start mongodb as sudo,它对删除mongo锁定文件发表了评论。
我删除了锁定文件,然后重试了我的命令,但是它仍然失败,如下所示:
me@medev:/var/lib/mongodb$ sudo rm mongod.lock
me@medev:/var/lib/mongodb$ ls
journal local.0 local.ns _tmp
me@medev:/var/lib/mongodb$ sudo service mongodb start
mongodb: unrecognized service
但是我可以使用/etc/init.d启动它,如下所示:
me@medev:/var/lib/mongodb$ sudo /etc/init.d/mongod start
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mongod start
Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the start(8) utility, e.g. start mongod
mongod start/running, process 27469
me@medev:/var/lib/mongodb$ ls
journal local.0 local.ns mongod.lock
me@medev:/var/lib/mongodb$ mongo
MongoDB shell version: 2.6.5
connecting to: test
> db
test
>
我为什么不能使用service命令启动它的任何想法将不胜感激。从我读过的书中,我应该使用sudo服务mongodb
最佳答案
尝试这个:
写mongodb
而不是mongod
sudo service mongodb status
次佳答案
有一天我遇到了同样的错误,您应该使用此错误:
1.获取您的mongo服务状态:
/etc/init.d/mongod status
要么
sudo service mongod status
2.如果尚未开始修复,则如下所示:
sudo rm /var/lib/mongodb/mongod.lock
mongod --repair
sudo service mongodb start
并再次检查服务是否再次启动(1)
第三种答案
对我而言,解决方案是更换
service mongod start
与
start mongod
第四种答案
您需要确保文件(例如/etc/init.d/mongodb)具有执行权限。
chmod +x /etc/init.d/mongodb
第五种答案
对于Debian,他们从2.4.x和2.6.x之间的10gen存储库中将初始化脚本/etc/init.d/mongodb重命名为/etc/init.d/mongod,并将默认配置文件重命名为/etc /mongodb。 .conf到/etc/mongod.conf,并且PID和锁定文件也从”mongodb”到”mongod”。这使升级变得很痛苦,而且我在任何地方的文档中都没有提到它。无论如何,解决方案是删除旧的”mongodb”版本:
update-rc.d -f mongodb remove
rm /etc/init.d/mongodb
rm /var/run/mongodb.pid
diff -ur /etc/mongodb.conf /etc/mongod.conf
现在,查看并查看需要保留哪些配置更改,并将其放在mongod.conf中。
然后:
rm /etc/mongodb.conf
现在你可以:
service mongod restart