Debian9下MongoDB PHP Driver连接报错:No suitable servers found
Debian 9上MongoDB连接报错:No suitable servers found (connection refused on 127.0.0.1:27017)
我在Debian 9服务器上部署项目时,遇到了MongoDB连接失败的问题。当PHP脚本调用selectDatabase()方法时,抛出了以下异常:
"No suitable servers found (
serverSelectionTryOnceset): [connection refused calling ismaster on '127.0.0.1:27017']"
当前环境配置
- Debian 9
- PHP 7.0.27-0+deb9u1
- MongoDB版本3.6.5
- MongoDB数据库驱动1.6.16(稳定版)
- PHP的MongoDB驱动1.4.3(稳定版)
已尝试的解决方案
我已经搜索过相关问题,修改了mongod.conf配置文件,删除了IPv6回环地址的配置,但问题仍然没有解决。
PHP连接脚本
use MongoDB\Client; $user = 'xxxx'; $pwd = 'yyyy'; $host = '127.0.0.1'; $port = '27017'; $db_name = 'my_db'; $mongo = new Client("mongodb://".$user.":".$pwd."@".$host.":".$port); return $mongo->selectDatabase($db_name);
补充信息
- 我在MongoDB的
admin库中创建的用户凭据是正确的,用户信息如下:
{ "_id" : "admin.root", "user" : "root", "db" : "admin", "credentials" : { "SCRAM-SHA-1" : { "iterationCount" : 10000, "salt" : "<hidden>", "storedKey" : "<hidden>", "serverKey" : "<hidden>" } }, "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] }
- 这个项目在本地MAMP环境中测试时,MongoDB连接完全正常,只有部署到生产服务器后才出现这个问题。
希望有人能帮我排查一下问题所在,谢谢!
内容的提问来源于stack exchange,提问作者Mattia Scagno
相关产品推荐
相关产品推荐

