无法连接到 AWS 上的 MongoDB(错误号:111 连接被拒绝)

Cannot connect to MongoDB on AWS (errno:111 Connection refused)

我已按照 AWS 的说明 (link) 在 AWS 上安装 MongoDB,在我尝试连接到它之前似乎一切正常。

当我 运行 mongo 时,我收到此连接错误:

2015-07-21T23:07:01.188+0000 warning: Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused
2015-07-21T23:07:01.188+0000 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

即使我注释掉 mongod.conf 文件中的 bind_ip 设置(论坛上的常见建议)或将其设置为0.0.0.0。 Mongo 确实安装了,我可以 运行 mongo --nodb 成功。有人可以建议帮助解决我的连接问题吗?

提前致谢!

编辑:糟糕,我的脚本没有启动 mongo 守护程序所需的权限,所以我用 sudo service mongod start 手动启动它,现在它可以工作了!谢谢!

"mongo --nodb" 将启动一个 "dummy mongod service" 并将您直接连接到它。

"mongo" 将尝试在 127.0.0.1(标准主机)的端口 27017(标准端口)上找到 mongod 服务。等于:mongo --host 127.0.0.1 --port 27017

检查您的 mongod 服务是否已在您的服务器上启动:

$ ps -aux | grep mongo        #check if service runs
$ netstat -nap | grep 27017   #check if port is 27017

启动您的 mongod 服务:

$ sudo service mongod start

如果仍然无法正常工作,请检查您的日志文件:

$ tail -n100 /var/log/mongodb/mongodb.log