使用homebrew安装Mongo.如果我在shell上键入mongo,它就会连接到test.但是当我输入本地机器的ip address而不是127.0.0.1

mongo --host 192.168.1.100 --verbose

它给了我错误信息

MongoDB shell version: 2.4.6
Fri Aug 23 15:18:27.552 versionArrayTest passed
connecting to: 192.168.1.100:27017/test
Fri Aug 23 15:18:27.579 creating new connection to:192.168.1.100:27017 
Fri Aug 23 15:18:27.579 BackgroundJob starting: ConnectBG
Fri Aug 23 15:18:27.580 Error: couldn't connect to server 192.168.1.100:27017 at src/mongo/shell/mongo.js:147
Fri Aug 23 15:18:27.580 User Assertion: 12513:connect failed

我try 过通过 comments bind_ip或将ip地址从127.0.0.1更改为0.0.0.0来修改mongo.conf,但没有成功.这应该很简单,但现在还没有线索.使用mac.

谢谢

更新:按要求.在我按照你的建议做了更改之后,这个功能就可以使用了.

ifconfig输出

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
   options=3<RXCSUM,TXCSUM>
   inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
   inet 127.0.0.1 netmask 0xff000000 
   inet6 ::1 prefixlen 128 
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
   options=b<RXCSUM,TXCSUM,VLAN_HWTAGGING>
   ether XX:XX:XX:
   media: autoselect (none)
   status: inactive
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
   ether XX:XX:XX:XX:01 
   inet6 XXXX:XXXX:XXXX: %en1 prefixlen 64 scopeid 0x5 
   inet 192.168.1.100 netmask 0xffffff00 broadcast 192.168.1.255
   media: autoselect
   status: active
 p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
   ether XX:XX:XX:XX:XX
   media: autoselect
   status: inactive
 fw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 4078
   lladdr XX:XX:XX:XX
   media: autoselect <full-duplex>
   status: inactive

执行命令mongo --host 192.168.1.100 --verbose时输出

MongoDB shell version: 2.4.5
Fri Aug 23 16:42:09.806 versionArrayTest passed
connecting to: 192.168.1.100:27017/test
Fri Aug 23 16:42:09.837 creating new connection to:192.168.1.100:27017
Fri Aug 23 16:42:09.837 BackgroundJob starting: ConnectBG
Fri Aug 23 16:42:10.129 connected connection!
Server has startup warnings: 
Fri Aug 23 16:41:59.025 [initandlisten] 
Fri Aug 23 16:41:59.025 [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000

文件mongod.conf

# Store data in /usr/local/var/mongodb instead of the default /data/db
dbpath = /usr/local/var/mongodb

# Append logs to /usr/local/var/log/mongodb/mongo.log
logpath = /usr/local/var/log/mongodb/mongo.log
logappend = true

# Only accept local connections
bind_ip = 0.0.0.0`

推荐答案

我刚刚在我的Mac电脑上用brew 软件进行了测试,如果你更改绑定地址,效果很好.我猜你可能只是没有正确地获取绑定的配置?

这样我们就有了所有的信息,你能粘贴ifconfig的输出吗?

默认情况下,MongoDB应该监听所有接口,您不需要更改配置,但是,brew 设置似乎覆盖了这一点(/usr/local/etc/mongod.conf):

# Only accept local connections
bind_ip = 127.0.0.1

请杀死MongoDB并运行这个(注意-v):

$ mongod --bind_ip 0.0.0.0 -v
warning: bind_ip of 0.0.0.0 is unnecessary; listens on all ips by default
all output going to: /usr/local/var/log/mongodb/mongo.log

请把你的输出贴上go 好吗?

然后试着:

$ mongo --host 192.168.43.2 --verbose
MongoDB shell version: 2.4.6
Sat Aug 24 09:07:14.556 versionArrayTest passed
connecting to: 192.168.43.2:27017/test
Sat Aug 24 09:07:14.657 creating new connection to:192.168.43.2:27017
Sat Aug 24 09:07:14.657 BackgroundJob starting: ConnectBG
Sat Aug 24 09:07:14.657 connected connection!
Server has startup warnings: 
Sat Aug 24 09:06:44.360 [initandlisten] 
Sat Aug 24 09:06:44.360 [initandlisten] ** WARNING: soft rlimits too low. Number of files     is 256, should be at least 1000
> 

显然,用你的IP地址替换它.让我们知道进展如何.

Mongodb相关问答推荐

MongoDB.ArrayFilters出错:在路径中找不到标识符';elem';的数组筛选器

如何在Mongo中查找数组中的特定对象

为什么 mongoose 在 mongodb 中找不到我的数据

Mongo $sort然后$group,顺序能保证吗?

避免在 MongoDB 聚合框架中使用 ISODate() 以便管道可以是纯 JSON

使用 mongo-driver/mongo 使用键/值对中的值表达式查找文档

嵌套数组 $unwind 和 $group 在 mongoDB 中重新组合在一起

Mongoose 架构引用和未定义类型ObjectID

Mongoexport 在日期范围内使用 $gt 和 $lt 约束

MongoDB 2.1 聚合框架总和匹配名称的数组元素

你如何在 Kubernetes 上设置 Mongo 副本集?

MongoDB插入引发重复键错误

try 解析序列化 JSON 字符串时处理 MongoDB 的 ISODate()

将 mongodb 聚合框架结果导出到新集合

MongoDB中超过2GB的数据库

为什么使用 Redis 而不是 MongoDb 进行缓存?

Cannot connect to MongoDB errno:61

如何使用 mgo 和 Go 查询 MongoDB 的日期范围?

MongoDB 的 MMAPV1、WiredTiger 或 In-Memory StorageEngine 如何 Select ?

无法从 mongodb 中删除集合