MongoDB:无法连接到127.0.0.1:27017,原因是:errno:61连接被拒绝
我的问题类似于本网站上的其他输入和建议,但没有人帮助过我。安装MongoDB后,由于数据库未运行,尚未启动。MongoDB:无法连接到127.0.0.1:27017,原因是:errno:61连接被拒绝
首先尝试运行蒙戈,我回答了这个:
Mac-Pro-de-User: ~ user $ mongo
MongoDB shell version: 2.6.4
connecting to: test
2014-10-28T10: 47: 08713-0700 warning: Failed to connect to 127.0.0.1:27017, reason: errno: 61 Connection refused
2014-10-28T10: 47: 08713-0700 Error: could not connect to server 127.0.0.1:27017 (127.0.0.1) Attempt connection failed at src/mongo/shell/mongo.js: 146
exception: connect failed
然后尝试检查的mongod,我回答了这个:
Mac-Pro-de-User: ~ user $ mongod
mongod --help for help and startup options
2014-10-28T10: 59: 34485-0700 [initandlisten] MongoDB starting: pid = 926 port = 27017 dbpath =/data/db host = 64-bit Mac-Pro-de-Ernesto.local
2014-10-28T10: 59: 34485-0700 [initandlisten]
2014-10-28T10: 59: 34485-0700 [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, Should be at Least 1000
2014-10-28T10: 59: 34485-0700 [initandlisten] db version v2.6.4
2014-10-28T10: 59: 34485-0700 [initandlisten] git version: 3a830be0eb92d772aa855ebb711ac91d658ee910
2014-10-28T10: 59: 34485-0700 [initandlisten] Build info: Darwin bs-osx108-4 12.5.0 Darwin Kernel Version 12.5.0: Sun Sep 29 13:33:47 PDT 2013; root: xnu-2050.48.12 ~ 1/x86_64 RELEASE_X86_64 BOOST_LIB_VERSION = 1_49
2014-10-28T10: 59: 34485-0700 [initandlisten] allocator: system
2014-10-28T10: 59: 34485-0700 [initandlisten] options: {}
2014-10-28T10: 59: 34486-0700 [initandlisten] journal dir =/data/db/journal
2014-10-28T10: 59: 34486-0700 [initandlisten] recover: no journal files present, no recovery needed
2014-10-28T10: 59: 34500-0700 [FileAllocator] allocating new datafile /data/db/local.ns, filling zeroes With ...
2014-10-28T10: 59: 34500-0700 [FileAllocator] creating directory/data/db/_tmp
2014-10-28T10: 59: 34512-0700 [FileAllocator] done allocating datafile /data/db/local.ns, size: 16MB, took 0.011 secs
2014-10-28T10: 59: 34726-0700 [FileAllocator] allocating new datafile /data/db/local.0, filling zeroes With ...
2014-10-28T10: 59: 35398-0700 [FileAllocator] done allocating datafile /data/db/local.0, size: 64MB, took 0.671 secs
2014-10-28T10: 59: 35695-0700 [initandlisten] build index on: local.startup_log properties: {v: 1, key: {_id: 1}, name: "_id_" ns "local.startup_log"}
2014-10-28T10: 59: 35695-0700 [initandlisten] index added to empty collection
2014-10-28T10: 59: 35695-0700 [initandlisten] Local command $ cmd command. Create {create: "startup_log" size: 10485760, capped: true} ntoreturn: 1 KeyUpdates: 0 numYields: 0 reslen: 37 1194ms
2014-10-28T10: 59: 35695-0700 [initandlisten] waiting for connections on port 27017
2014-10-28T11: 00: 34516-0700 [clientcursormon] mem (MB) res: 33 virt: 2653
2014-10-28T11: 00: 34516-0700 [clientcursormon] mapped (incl journal view): 160
2014-10-28T11: 00: 34516-0700 [clientcursormon] connections: 0
,然后再次尝试连接并花一些时间,再说一样:
2014-10-28T11: 05: 34589-0700 [clientcursormon] mem (MB) res: 33 virt: 2653
2014-10-28T11: 05: 34589-0700 [clientcursormon] mapped (incl journal view): 160
2014-10-28T11: 05: 34589-0700 [clientcursormon] connections: 0
等等。如果你能提供帮助,将不胜感激。
PS:已经有777个权限/数据/ DB和我使用OSX小牛 10.9.5
你运行所有这些命令在同一个终端作为单独的行动作为你的时间戳建议? (如果不是,我希望看到故障和日志之间的重叠,以便正确诊断)。
如果是这样,那么你在做什么如下:
- 启动外壳,尝试连接到未运行的数据库(拒绝连接)
- 启动数据库,看到在0连接日志
- 停止数据库(按Ctrl-C或类似),开始一个空壳,无法重新连接,因为数据库已经关闭
- 启动数据库,看到在日志0连接
- 重复
数据库需要与shell同时运行,以便可以连接到它。因此,您应该在一个终端中启动mongod
进程,使其保持运行状态,然后打开新的终端(或选项卡)并运行mongo
命令以连接到仍在运行的数据库。另一个选项是run mongod
as a daemon,它允许您在返回后在同一终端中运行mongo
命令。
注意:您永远不应该有一个拥有777权限的文件夹,这不是必需的,并且是一个重大的安全风险。
谢谢,它工作。在后台运行mongod,可以从mongo卖出。你能告诉我什么样的权限,你建议这个文件夹。再次感谢=) – 2014-10-28 20:31:33
假设它属于你,并且你正在运行mongod作为你自己(不使用sudo),那么755就可以,你只是不希望它是世界上可写的。如果它不属于你,那么首先(chown -R user:staff/data/db') - 用你的实际用户名替换用户。 – 2014-10-28 22:07:12
非常感谢你=)非常有帮助= D – 2014-10-29 19:18:40
试试这个命令。
须藤CHOWN MongoDB的/tmp/mongodb-27017.sock
而且
须藤服务的mongod重启
固定!
原因是/etc/mongodb.conf中的dbpath变量。以前,我使用的是mongodb 1。8,其中dbpath的默认值是/ data/db。新贵的工作mongodb(与mongodb-10gen包一起)通过--config /etc/mongodb.conf选项调用mongod。
作为解决方案,我只需递归更改/ data/db目录的所有者。
像这样:转到 “/数据” 位置在终端然后键入
sudo chown -R <username>:foldername
例如:
sudo chown -R raja db/
你好只检查如果你创建了/ data/db路径,并且你确实给了755元与chmod的任务。
欢迎来到SO!已经有一个公认的答案来解决作者确认工作的这些问题。请避免添加答案,除非他们提供新的东西。另外运行777可能是一个安全问题,应该避免。 – ext 2017-11-28 23:56:40
只要把它放在那里 - 我只需打开和关闭电脑,它就开始工作了。这发生在我身上两次 – James111 2015-11-27 00:40:26