添加副本集的配置后,如何在MacOS上连接到mongodb?

时间:2019-04-26 16:24:43

标签: mongodb

我想拖拽mongo collection的文档,为此,我需要激活oplog。 Oplog在mongod.conf文件中需要一些额外的配置,并且这些配置不允许mongo连接。

我试图研究有关拖尾mongodb,设置conf文件的问题,但是在设置replciaset配置后,没有一个可以解决我连接mongodb的需要。

我的conf文件(其位置为/usr/local/etc/mongod.conf)是:

systemLog:
  destination: file
  path: /usr/local/var/log/mongodb/mongo.log
  logAppend: true
storage:
  dbPath: /usr/local/var/mongodb
net:
  bindIp: 127.0.0.1
replSet=rs0
oplogSize=1024

我没有在日志中得到任何东西,brew services list命令还显示以下内容:

mongodb   started aviralsrivastava /Users/aviralsrivastava/Library/LaunchAgents/homebrew.mxcl.mongodb.plist

尽管设置了rs0,但started信号为黄色,最后两行带有注释,为绿色。

我希望mongodb建立连接,mongo shell启动,但是我得到的只是连接被拒绝。如果我在最后两行发表评论,mongo将被连接。是的,每次更改配置文件时,我都通过mongodb重新启动了brew services restart mongodb

以下是我尝试通过命令mongodb连接的错误:

➜  etc mongo
MongoDB shell version v4.0.3
connecting to: mongodb://127.0.0.1:27017
2019-04-27T08:53:31.350+0530 E QUERY    [js] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: Connection refused :
connect@src/mongo/shell/mongo.js:257:13
@(connect):1:6
exception: connect failed

1 个答案:

答案 0 :(得分:0)

mongod --config path/to/config-file-portx --replSet rsName

连接: mongo --port xxx 配置:

config: 
rs.initialize();
rs.add(host:port-y);
rs.status()

连接副本:

mongo "mongodb://host1,host2,host3/myDB?replicaSet=rsName"