47

我只想尝试 MongoDB Compass GUI for MongoDB,但是当我尝试使用本地主机端口连接时:27017 我收到此错误:

无法在提供的主机和端口上连接到 MongoDB

我按照YouTube 上的这些说明进行操作。

4

14 回答 14

53

我今天遇到了这个问题,后来我发现这是一个设置问题。如果您在第一次设置 MongoDB 时也遇到此问题,以下步骤可能会对您有所帮助。确保该MongoDB服务已在services.msc.

  1. 转到 C 盘并db在路径中创建一个文件夹C:\data\db,如果您在 C 盘中看不到data文件夹,请先创建它,然后再创建db文件夹,如评论中提到的 @sebastian。
  2. 转到安装 MongoDB 的文件夹,就我而言,它是C:\Program Files\MongoDB\Server\3.6\bin
  3. 输入命令C:\Program Files\MongoDB\Server\3.6\bin>mongod
  4. 这将在您的机器上设置 MongoDB,您将获得如前所述的输出。

C:\Program Files\MongoDB\Server\3.6\bin>mongod 2018-03-11T07:02:56.558-0700 I CONTROL [initandlisten] MongoDB 开始:pid=18720 port=27017 dbpath=C:\data\db\ 64 -bit host=SibeeshVenu 2018-03-11T07:02:56.558-0700 I CONTROL [initandlisten] targetMinOS:Windows 7/Windows Server 2008 R2

  1. 现在,如果您尝试连接,您可能不会遇到问题。

在此处输入图像描述

于 2018-03-11T14:13:20.807 回答
35

按 windows 键按钮并搜索服务并找到MongoDB然后启动。然后再试一次。它会工作

于 2018-03-06T01:40:24.003 回答
18

如果其他人有这个错误,这对我有用:

  • 编辑 /etc/mongod.conf
  • 在网络下,通过在行首放置 # 来注释以下内容:

    绑定IP:127.0.0.1

- 什么地方出了错: -

原因:bindIp 导致它拒绝外部请求,因此我们需要删除该设置。

我的 mongo 是 Red Hat (RHEL6) 的标准 yum 安装,这是默认配置的(我从 mongoDB 2.6 开始并逐步升级到 3.4)。

编辑:对于 MongoDB 2.4 及更早版本使用:bind_ip = 127.0.0.1

于 2017-08-24T02:08:08.857 回答
14

挣扎了3个小时。
以下是 3 个步骤的完整过程:


在 MongoDB 服务器机器上

获取 IP 地址:

  1. 运行CMD或命令提示符
  2. 运行ipconfig命令
    查找类似于
    IPv4 地址下方的行。. . . . . . . . . . :10.111.11.111
  3. 复制上面的 IP 值,即 10.111.11.111,它可以为你不同

编辑 MongoDB 服务器配置文件中的 bindIP:

  1. 打开 C:\Program Files\MongoDB\Server\4.0\bin\mongod.cfg
    查找以下行:
    bindIp: 127.0.0.1
  2. 在末尾添加一个逗号,然后粘贴复制的 IP,如下所示:
    bindIp: 127.0.0.1,10.111.11.111

注意:如果您的 IP 地址每天都在变化,那么最好写下计算机名称(输入hostnamecmd获取您的计算机名称)

重启 MongoDB 服务器

  1. 运行services.msc命令
    在右侧向下滚动以选择MongoDB Server
    左上角,Restart the service

在客户端机器上

从另一台机器连接到 MongoDb 服务器

现在,您可以从另一台机器连接。使用客户端,例如MongoDB Compass或其他:

  1. 可以使用它的 IP 进行连接,在 MongoDB Compass 客户端中 10.111.11.111提供它Hostname
  2. Hostname在 MongoDB Compass 客户端中,也可以是服务器的计算机名称,如 W11ABC11A11。要获取 MongoDB 服务器的计算机名称,请使用hostnamein CMD(在 MongoDB 服务器计算机上)。

故障排除/问题?

完成上述所有操作后,如果您遇到问题,则:
- 相互 ping 对方(客户端从服务器,反之亦然)使用ipconfig,使用命令ping IPhere,你应该得到Reply from ..不应该得到Request timed out.
- 如果你在上面看到问题:
- 重新启动客户端机器, 再次 ping
-- 如果您仍然有问题,请让 DB 所有者重新启动服务器计算机一次(如果它是开发服务器,则在空闲时重新启动应该没有任何问题。)
-- 问题仍然存在吗?验证以上所有步骤

希望有帮助。

于 2018-08-07T03:35:48.147 回答
9

我有同样的问题

  1. 尝试启用 cmd 输入命令 -> mongod
  2. 然后尝试使用 MongoDb Compass 程序连接您必须始终有一个打开的控制台
于 2018-02-04T20:29:29.680 回答
5

编辑/etc/mongod.conf

在网络设置下

bindIp: 0.0.0.0
于 2019-05-23T12:49:24.030 回答
4

如果您在Windows上工作,这是一个常见问题。

打开您的任务管理器并转到“服务”选项卡。检查 MongoDB 服务器是否已停止。如果停止,请右键单击它并启动服务器。然后再试一次。问题将得到解决。

于 2019-06-24T17:07:47.993 回答
1

在这上面浪费了很多时间,似乎都试过了,实际上这些解决方案都没有对我有用......

最终,我的 MongoDb 似乎想忽略我的配置文件,因为注释掉 bind_ip 字段应该做同样的事情。

尝试像这样启动mongo

mongod --bind_ip_all

或者,您可以指定特定的 IP

mongod --bind_ip <IP>
于 2019-02-15T18:18:45.143 回答
0
  • 请在使用 Compass GUI 之前启动 mongoDB
于 2018-03-19T07:39:13.107 回答
0

检查 .conf 文件中是否启用/打开了 27017 端口.. 这是因为默认情况下未打开 27017 端口,您还需要在 TCP IN 中添加您的 IP 以使您的 Internet IP 远程连接..

于 2018-10-31T09:38:18.047 回答
0

如果您在 Windows 上工作,这是一个常见问题。

在驱动器上创建data/db文件夹c,然后运行 ​​mongod C:\Program Files\MongoDB\Server\4.2\bin ,然后从 mongodb compass 连接解决了我的问题

基本上在c驱动器上,您应该有data一个文件夹,该文件夹包含db我所理解的文件夹,我刚刚分享了某人可能会从中获得帮助:)

于 2019-12-25T19:43:41.673 回答
0

我的MongoDB安装的机器防火墙已启用,这就是为什么我不能从远程机器MongoDB罗盘

禁用防火墙后,我可以从远程 MongoDB指南针连接。

[17:32:51 oracle@test2 bin]$ service firewalld stop

谢谢

于 2018-10-30T08:39:25.643 回答
0

我在 Ubuntu 上,我只是通过检查“mongod.conf”文件来做到这一点。确保设置了以下参数:

net:
  port: 27017
  bindIp: 127.0.0.1

在每次更改之后,我建议您使用

sudo systemctl restart mongod.service

于 2021-01-04T08:33:30.230 回答
0

我在 EC2 实例上使用 MongoDB 时遇到了类似的问题,并试图通过 Mongodb 指南针连接到它。

在 Mongodb Compass 身份验证屏幕上,将端口更改为 443 有效,因为我的 mongod 服务正在侦听 443。 在此处输入图像描述

于 2021-01-01T11:44:30.917 回答