MongoDB分片集群启动过程中Failed to connect to 127.0.0.1:27017错误解决办法

来源:互联网 时间:1970-01-01

(1)进行MongoDB分片集群部署过后,进入MongoDB的目录下,输入bin/mongo -port:30000,居然弹出错误:

MongoDB shell version: 3.0.7
connecting to: test
2015-10-30T10:34:27.215+0800 W NETWORK  Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused
2015-10-30T10:34:27.216+0800 E QUERY    Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed
    at connect (src/mongo/shell/mongo.js:179:14)
    at (connect):1:6 at src/mongo/shell/mongo.js:179
exception: connect failed


(2)在查找这个问题过程中,发现是服务尚未启动,于是输入命令:./bin/mongod,结果又出现错误:

2015-10-30T10:34:43.844+0800 I STORAGE  [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating
2015-10-30T10:34:43.844+0800 I CONTROL  [initandlisten] dbexit:  rc: 100


(3)这才想起这个错误是因为上次没有正常退出mongodb,直接就关掉终端才导致这种问题。然而对于这个问题网上的都只是单机版的解决办法,于是自己只能瞎碰运气。

单机情况下,都说是.lock文件的问题,但是由于采用的分片集群,位置肯定是跟他们不一样的,不过想想原理应该是相通的。于是从之前创建的shard11和shard21当中将mongod.lock文件去掉。


sudo rm ./data/shard11/mongod.lock.

sudo rm ./data/shard21/mongod.lock.

本来自己配置了6台的集群,想着先删除掉一台的再试看看。所以剩下的6台先不动看看。如其中一台仍有绿色的.lock文件。


(4)下一步按照单机解决的步骤是要进行重新配置。然而在分片集群中是没有.conf文件的,于是又重新将安装过程中所采用的配置步骤又重新运行一下:

./bin/mongod --configsvr --dbpath ./data/config --port 20000 --logpath ./data/config.log --logappend --fork


(5) 再进入bin/mongo -port:30000,果然搞定。




相关阅读:
Top