无法连接到:localhost:27017:远程服务器在Mongo 2.6升级后关闭了连接

时间:2014-04-08 20:49:48

标签: php mongodb

Mongo 2.4.10 成功升级到 Mongo 2.6.0 (我确认我可以在shell中查询数据库)我之前遇到了一些问题工作的PHP代码。

未捕获的异常'MongoConnectionException' with message 'Failed to connect to: localhost:27017: Remote server has closed the connection'并且还指出了以下行:$m = new Mongo();

我正在使用Php 5.5.10-1+deb.sury.org~precise+1 1.4.5 phpMongo Driver(我认为尚未升级到支持2.6版本)。 2.6升级后有人遇到过同样的问题吗?

2 个答案:

答案 0 :(得分:1)

您始终希望在升级服务器之前升级驱动程序

MongoDB PHP驱动程序版本1.5.0(及更高版本)具有MongoDB 2.6.0(及更高版本)支持,因为在使用MongoDB PHP驱动程序的1.4.x(或更早版本)版本时,某些内容将无法正常工作。

我强烈建议您升级到MongoDB PHP驱动程序的1.5.1版本。 此外,“Mongo”对象已被弃用,您真的想使用“MongoClient”类。

话虽如此。这应该工作得很好。 你的mongod.log说什么? 你能使用mongo shell连接到localhost:27017吗?

答案 1 :(得分:0)

实际上一切似乎都比这简单(我应该责怪我而不是php mongo驱动程序):

我使用new Mongo();连接到数据库(显然已弃用)

  

启动此类将发出E_DEPRECATED警告,并关闭   承认写道。

奇怪的是,我从未在日志中看到过这个,尽管我有E_ALL作为我的警告级别。无论如何,在我改为推荐方式new MongoClient();之后,问题就解决了。