最近在使用MongoDB,在一个服务器上建立好MongoDB的服务后,需要从其他的服务器通过ip和端口的形式去访问,但是出错。
现象是:在数据库所在的服务器上可以访问到该端口对应的mongodb服务,在其他服务器上访问不到,访问命令是:
mongosh --host ip:port -u user -p pwd
ip:起mongodb的服务器ip
port:该mongodb自定义的端口号
user:用户名
pwd该用户名对应的密码,用户名和密码均为自定义的
然后就会报错:MongoServerSelectionError: connect EHOSTUNREACH ip:host
查了半天资料,没有解决问题。最后问了一下这台服务器的端口原来是有范围限制的,我的端口没有设置在该服务器的有效端口范围内,所以其他的服务器访问不到该端口。
解决办法:关闭该mongoDB服务,更改该mongoDB服务的端口号,然后重启该mongoDB服务。