这是我第一次尝试使用 MongoDB。我已经让 Mongo 运行了:
ps -ef | grep [m]ongo
mongodb 11023 1 0 Jun24 ? 00:00:03 /usr/lib/mongodb/mongod --config /etc/mongodb.conf
错误是由于执行操作而出现的
Datastore.save( stuff ); // (pseudo code)
错误:
Jun 27, 2011 3:20:29 PM com.mongodb.DBTCPConnector fetchMaxBsonObjectSize WARNING: Exception determining maxBSON size using0 java.io.IOException: couldn't connect to [russ-elite-book/127.0.1.1:27017] bc:java.net.ConnectException: Connection refused at com.mongodb.DBPort._open(DBPort.java:206) at com.mongodb.DBPort.go(DBPort.java:94) at com.mongodb.DBPort.go(DBPort.java:75) at com.mongodb.DBPort.findOne(DBPort.java:129) at com.mongodb.DBPort.runCommand(DBPort.java:138) ...
请注意,我使用 127.0.0.1:27017 进行连接,适用于 Mongo shell。另外,我使用
http://localhost:28017
在浏览器中获取管理页面。
非常感谢您的任何和所有想法!
我遇到了同样的问题,因为我使用brew升级了我的mongo。为了解决这个问题。查找conf文件(它可能不在您启动mongodb的bin目录中)
/usr/local/Cellar/mongodb-2.2.whatever/mongod.conf,并注释掉“bind_ip”属性。
(我认为回答自己的问题有点不好,但事实上,答案并不是这些建议的答案。尽管如此,我还是非常感谢他们所有人。在回答问题时,一个人需要能够假设它是基于正确安装和工作的软件。我没有那个。)
我使用 Ubuntu 软件中心安装了 MongoDB。正如本问题其他地方所述,它从外壳和浏览器运行。然而,它在 Java 中不起作用(在 Django 中也不起作用)。
无论 Java 堆栈跟踪中如何描述,问题都只是“连接被拒绝”。
解决方案是从正确的 Mongo 源安装它,而不是信任 Ubuntu 存储库。
(是的,从那里获得的其他产品也经常发生这种情况,例如 Eclipse,但您知道这是一项非常好的服务,您想要信任它。)
如果您想了解我如何安装然后起作用的内容,请查看 http://www.javahotchocolate.com/tutorials/mongodb.html。
我遇到了同样的问题,但我的解决方案不同。我使用“localhost”作为主机名并将其更改为“127.0.0.1”修复了它。
Java 驱动程序很可能无法连接到指定的地址。 确保您可以使用 shell 连接到该地址
127.0.1.1:27017
并运行“db.isMaster()
”。
也许这是127.0.1.1
与127.0.0.1
的问题。
事实证明这是Java MongDB 驱动程序的问题。
有两种解决方案:
bind_ip = 127.0.0.1
或 bind_ip = localhost
,请将其注释掉。正如我在对 Russ Bateman 自己的回答 的评论中所示,一开始这似乎是 Ubuntu 软件包的问题。真正的原因是它附带的配置文件确实定义了
bind_ip
... 的值
我遇到了同样的问题,因为我使用 apt-get 安装了 mongo。以下是修复方法:
这似乎是一个安全问题或无效的网址。如果您使用默认配置,您应该能够访问 http://yourmachine:28017。看看您是否可以从此网址导航到管理页面。如果您能够导航到管理 URL,只需在应用程序中将端口号替换为 27017 即可。应该可以。
如果没有看到 .conf 文件内容,就很难说。我建议的一件事是运行 mongo shell 并查看是否可以通过它进行连接、查询和写入。这将有助于隔离服务器与 Java 客户端问题。此外,它可能会为您提供不同形式的错误,这可能是一个提示。
您是否在 .conf 文件中设置 --port ?
对我来说,这是一个完全不同的解决方案。我正在使用 Spring MVC 框架,我所要做的就是确认配置 XML 文件在 /target 文件夹以及非目标文件夹中表示相同的内容。一旦调整好,一切就正常了。问题是,从 STS 运行时一切正常,但部署时,我遇到了上述错误。
在我的例子中,我使用 pymongo 连接到 mongo atlas 集群。有连接限制,我怀疑我打开了太多连接,因此重写代码以共享一个连接并正确关闭它解决了问题。