我正在尝试连接到在远程 Linux 服务器上运行的 MongoDB 实例。连接尝试超时导致我怀疑 Linux 服务器上的网络设置,因为我可以 ssh 到服务器并在本地连接到 MongoDB。
/etc/mongod.conf
没有bind_ip
设置,所以这不是问题。
谁能指出我如何解决这个问题?
我正在尝试连接到在远程 Linux 服务器上运行的 MongoDB 实例。连接尝试超时导致我怀疑 Linux 服务器上的网络设置,因为我可以 ssh 到服务器并在本地连接到 MongoDB。
/etc/mongod.conf
没有bind_ip
设置,所以这不是问题。
谁能指出我如何解决这个问题?
你能从远程主机telnet到MongoDB端口并成功连接吗?
如果是这样,则表示端口已打开,连接正常,不是防火墙/iptables 等问题。您应该查看下一部分 - 您是否启用了身份验证?
如果您无法通过 telnet 连接,则说明您无法从远程主机访问该端口。它可能是防火墙,也可能在主机上——这实际上取决于您的设置和基础设施。
删除 mongoDB sudo rm -rf /data/configdb/mongod.lock 获取的任何锁;
为配置和分片服务器创建数据目录
sudo mkdir /data;
sudo mkdir /data/db;
sudo mkdir /data/configdb;
sudo chown -R ubuntu:ubuntu /data;
sudo chmod -R 755 /data
授予上述创建的文件夹的权限。将所有权授予上述创建的文件夹。
现在尝试连接到mongodb,它现在肯定会连接。