猫鼬连接错误:MongoError:无法连接到服务器

时间:2019-02-15 11:05:29

标签: mongodb authentication mongoose

我在centOS上运行mongo 3.4。它正在使用授权。我需要将其升级到mongo 3.6。我升级了它,现在无法通过任何方式远程连接它。既不涉及外壳,也不涉及节点服务器本身。

这是猫鼬的联系方式。

const uri = 'mongodb://admin:12345@host:27017/db?authSource=admin';

mongoose.connect(uri);

这是mongod.conf

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

# Where and how to store data.
storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile

# network interfaces
net:
  port: 27017
#  bindIp: 127.0.0.1  # Listen to local interface only, comment to listen on all interfaces.


security:
 authorization: enabled


#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options

#auditLog:

#snmp:

1 个答案:

答案 0 :(得分:2)

可能升级未成功,并且mongod服务的重新启动失败。 查看/var/log/mongodb/mongod.log中的日志,并检查mongod.conf中是否存在任何不一致之处。

检查服务是否已启动以及是否正在端口27017上监听。

service mongod status netstat -tl | grep 27017 # or using the ss command ss -tl | grep 27017

来自官方 documentation:

从MongoDB 3.6开始,默认情况下,mongod和mongos实例绑定到localhost。远程客户端无法连接到仅绑定到本地主机的实例。要覆盖并绑定到其他IP地址,请使用net.bindIp配置文件设置或--bind_ip命令行选项来指定IP地址列表。

尝试以下设置以启用服务在所有接口上进行侦听 net: port: 27017 bindIp: 0.0.0.0