mongoid连接问题

我一直在尝试在Ubuntu上使用Mongoid和Rails。 Mongodb正在为我的轨道应用程序3.0至3.2罚款。

今天突然,我得到一个错误:

/home/pravinmishra/.rvm/gems/ruby-1.9.2-p318/gems/mongo-1.5.2/lib/mongo/connection.rb:413:in`connect':无法连接到本地主机上的主节点:27017(Mongo :: ConnectionFailure)

很多时候我遇到这个问题,下面的命令为我工作:

sudo rm /var/lib/mongodb/mongod.lock sudo -u mongodb mongod -f /etc/mongodb.conf --repair sudo start mongodb sudo status mongodb 

当我使用mongo从Ubuntuterminal连接时,我得到这个错误:

MongoDB shell版本:2.0.1连接到:testing星期一7月9日22:47:06错误:无法连接到服务器127.0.0.1 shell / mongo.js:84exception:连接失败

任何build议,将不胜感激。

也许你的mongodb实例意外退出,并且你有失锁,数据库处于不一致的状态。

正如你已经猜到的,使用--repair标志启动mongoDB,但之后你需要重新启动它,而没有它。

还要确保所有的进程都被终止,否则你将无法在同一个端口上绑定服务器。 我build议执行netstat -tulnp并仔细检查27017端口是否没有监听。

根据你的评论,关于旧的锁文件错误,你有一个mongod已经运行,你正在尝试连接到错误的端口,或者你有一个以前运行的mongod过程不干净的closures的情况下,你需要删除locking文件并重新启动(可能会根据不正常关机的性质进行修复)。

如果再次发生这种情况,一定要确保启用日志function(默认在2.0),然后修复应该不是必要的。

您可能无法连接到默认本地主机:27017,因为以前的实例必须由于错误或exception或locking而不正确地终止。 请尝试杀死以前的进程,然后再次运行。