无法连接到MongoDB错误:在src/mongo/shell/mongo.js:L112处无法连接到服务器127.0.0.1:27017。

18
每当我尝试连接MongoDB时,总是会出现以下错误:

MongoDB shell版本:2.4.3 连接到:测试 Fri Apr 26 14:31:46.941 JavaScript执行失败:错误:无法连接到src / mongo / shell / mongo.js:L112处的服务器127.0.0.1:27017 异常:连接失败

我在stackoverflow上尝试了各种解决方案,并尝试了以下命令,但都没有起作用。

1)sudo rm /var/lib/mongodb/mongod.lock

//说这样的文件位于此位置。

2)sudo service mongodb start

//错误:sudo:service:命令未找到

3)我确保该端口上没有其他运行的内容。

4)甚至尝试卸载并重新安装它。

5)还尝试了kill pid。


1
为什么不先启动mongodb? - Michael W
1
服务命令执行失败意味着你的发行版可能使用了不同的初始化系统,你应该至少指定你的发行版,或者尝试位于 /etc/init.d/ 目录下名为 mongodb 或类似名称的 init 脚本,因此可以使用 sudo /etc/init.d/mongodb start 或类似命令。 - sherpya
这个对我有帮助:https://gist.github.com/adamgibbons/cc7b263ab3d52924d83b - Nav
18个回答

38

我也出现了同样的错误,这个方法对我起作用:

sudo mongod --repair

随后是

sudo mongod

(忘记服务开始)

然后在一个不同的选项卡/终端上:

mongo

5

首先启动mongod服务器

mongod

打开另一个终端窗口

启动Mongo Shell

mongo

4

这是因为Mongodb被锁定了
请执行以下命令:
sudo rm /var/lib/mongodb/mongod.lock
sudo service mongodb restart


3

如果您在Windows计算机上遇到问题,请按照以下步骤操作:

  1. 将mongodb的路径添加到环境变量中。
  2. 创建一个C:\Data\db目录。
  3. 打开终端(cmd)并输入mongod。(这将启动服务器)。
  4. 打开另一个终端并编写自己的代码。

3
请先启动MongoDB服务器并尝试连接。
先决条件:
在任何目录中创建用于存储数据库和表的空间,例如(Windows):D:\ mongodbdata \
步骤:
1. 启动服务器
mongod --port 5000 --dbpath D:\mongodbdata\ (请提及上述创建的路径)
2. 连接MongoDB服务器(在另一个终端/控制台中运行)
mongo --port 5000

2

我有同样的问题,在我的情况下,mongo配置中的IP地址不匹配

~# mongo
MongoDB shell version: 2.6.7
connecting to: test
2015-02-02T17:48:52.302+0530 warning: Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused
2015-02-02T17:48:52.303+0530 Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146
exception: connect failed

当我检查我的配置文件时,我已经指定了绑定地址为eth0的ip(10.8.10.111),而不是回环地址(127.0.0.1)。因此,我已经将IP地址更改为回环地址,如在/etc/mongod.conf文件中所示:bind_ip = 127.0.0.1,并使用service mongod restart重新启动它,最后生效。

# mongo 
MongoDB shell version: 2.6.7
connecting to: test
> 

1
mongod --configsvr --smallfiles --nojournal --dbpath cfg/1 --port 26052 --fork --logpath cfg/3.log >/dev/null

在默认端口上创建单个 mongos 服务器。
sleep 2000
mongos --configdb ${HOSTNAME}:26050,${HOSTNAME}:26051,${HOSTNAME}:26052 --fork --logpath mongos.log >/dev/null

在启动mongos之前休眠一段时间,您就不会遇到问题。


1

首先启动 mongod 服务,然后启动 mongomongos


1
面对同样的问题,我的理解是(可能不正确):
1. 确保 mongodb 已经启动并运行
2. 对于 Linux 访问,请使用 sudo;对于 Windows,如果连接本地主机,则关闭防火墙可能有所帮助,但这不是必要的
3. 只需 输入 mongo,它将默认尝试连接到本地主机。如果您要连接到远程服务器,则需要指定 IP。默认情况下,将使用 test 数据库。

0

如果您创建了 data\db 文件夹,首先必须删除此文件夹,然后执行以下操作:

c:\mongodb\bin\mongo.exe 

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接