ubuntu 连接mongodb失败?
Posted
技术标签:
【中文标题】ubuntu 连接mongodb失败?【英文标题】:Failed to connect to mongodb in ubuntu? 【发布时间】:2011-12-29 02:45:30 【问题描述】:我遵循了这个教程:http://howtonode.org/express-mongodb
很奇怪,我第一次按照教程操作时一切正常。 但是现在,在我想再次使用代码之后的一天,我无法开始 服务器。这是我得到的:
alex@alex-System-Product-Name:~/blog2$ node app.js Express 服务器 在开发模式下监听 3000 端口
node.js:134 扔 e; // process.nextTick 错误,或第一次滴答时的 'error' 事件 ^ 错误:无法连接到 [localhost:27017] 在 [对象对象]。 (/home/alex/blog2/node_modules/mongodb/lib/mongodb/connection/server.js:189:47) 在 [object Object].emit (events.js:67:17) 在 [对象对象]。 (/home/alex/blog2/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:110:14) 在 [object Object].emit (events.js:67:17) 在套接字。 (/home/alex/blog2/node_modules/mongodb/lib/mongodb/connection/connection.js:301:10) 在 Socket.emit (events.js:64:17) 在阵列。 (net.js:836:27) 在 EventEmitter._tickCallback (node.js:126:26) alex@alex-System-Product-Name:~/blog2$
有解决这个问题的建议吗?
编辑:
我刚刚做了:
alex@alex-System-Product-Name:~/blog2$ sudo service mongodb start
mongodb start/running, process 9847
alex@alex-System-Product-Name:~/blog2$ sudo service mongodb status
mongodb stop/waiting
alex@alex-System-Product-Name:~/blog2$
不确定它是否正在运行。
这就是我在命令行中输入$ mongo
得到的结果:
alex@alex-System-Product-Name:~/blog2$ mongo
MongoDB shell version: 1.8.2
Tue Nov 15 08:09:50 *** warning: spider monkey build without utf8 support. consider rebuilding with utf8 support
connecting to: test
Tue Nov 15 08:09:50 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:79
exception: connect failed
【问题讨论】:
你确定 mongodb 正在运行吗?似乎节点无法连接到它。 【参考方案1】:这解决了问题:
http://www.synchrosinteractive.com/blog/1-software/47-mongodb-repair-on-ubuntu
显然,当数据库崩溃或其他情况时,mongodb 会创建一个锁定文件。 删除该文件并修复 mongodb 即可解决问题:
手动删除锁文件:sudo rm /var/lib/mongodb/mongod.lock
运行修复脚本:sudo -u mongodb mongod -f /etc/mongodb.conf --修复
【讨论】:
【参考方案2】:错误似乎表明 MongoDB 没有运行。
在无人参与的情况下运行 MongoDB 时,您为 mongod
进程提供了一个指向文件的 --logpath
参数。检查该文件以查看 mongod
失败的原因。
【讨论】:
以上是关于ubuntu 连接mongodb失败?的主要内容,如果未能解决你的问题,请参考以下文章