无法连接到MongoDB错误:61

Mic*_*ael 19 macos mongodb osx-mavericks

我使用macports安装了MongoDB,并尝试运行该mongo命令以启动mongo shell.我收到以下错误:

warning: Failed to connect to 127.0.0.1:27017, reason: errno:61 Connection refused

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
Run Code Online (Sandbox Code Playgroud)

然后我运行mongod并收到以下错误:

$ [initandlisten] MongoDB starting : pid=11984 port=27017 dbpath=/data/db 64-bit host=Nikitas-MacBook-Air.local
$ [initandlisten] 
$ [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
$ [initandlisten] db version v2.6.0
$ [initandlisten] git version: nogitversion
$ [initandlisten] build info: Darwin tennine-slave.macports.org 13.1.0 Darwin Kernel Version 
13.1.0: Thu Jan 16 19:40:37 PST 2014; root:xnu-2422.90.20~2/RELEASE_X86_64 x86_64 BOOST_LIB_VERSION=1_55
$ [initandlisten] allocator: tcmalloc
$ [initandlisten] options: {}
$ [initandlisten] exception in initAndListen: 10296 
*********************************************************************
 ERROR: dbpath (/data/db) does not exist.
 Create this directory or give existing directory in --dbpath.
 See http://dochub.mongodb.org/core/startingandstoppingmongo
*********************************************************************
, terminating
$ [initandlisten] dbexit: 
$ [initandlisten] shutdown: going to close listening sockets...
$ [initandlisten] shutdown: going to flush diaglog...
$ [initandlisten] shutdown: going to close sockets...
$ [initandlisten] shutdown: waiting for fs preallocator...
$ [initandlisten] shutdown: lock for final commit...
$ [initandlisten] shutdown: final commit...
$ [initandlisten] shutdown: closing all files...
$ [initandlisten] closeAllFiles() finished
$ [initandlisten] dbexit: really exiting now
Run Code Online (Sandbox Code Playgroud)

从哪里创建/data/db目录?第二个错误是errno:61我跑的原因mongo吗?

Ali*_*ani 23

我遇到过类似的问题.我已在此博客上详细说明了错误跟踪和解决方案这是我为解决此问题所做的一步一步的过程:

第1步 - 安装(如果您已经安装了MongoDB,请不要执行此步骤):

brew update
brew install mongodb
Run Code Online (Sandbox Code Playgroud)

第2步 - 运行Mongo守护进程:

mkdir -p /data/db
sudo mongod
Run Code Online (Sandbox Code Playgroud)

第3步 - 运行Mongo Shell界面:

mongo
Run Code Online (Sandbox Code Playgroud)

在这个序列中,我能够运行mongo命令而没有任何错误.


Dav*_*ere 20

是的,你会/data/db在root 创建.在MongoDB的文档提出了在OS X创建以下命令mkdir -p /data/db.

关于你的第二个问题,也是的.由于Mongo守护程序无法启动且未监听,因此会出现连接错误.

MongoDB默认/data/db为数据目录.您可以使用命令--dbpath上的选项覆盖默认值mongod(也可以在上面的doc链接上).

  • 这很有效,谢谢.我创建了目录并使用'sudo mongod'来打开连接.在我使用'mongo'之后,它最终打开了与shell的连接. (2认同)