首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在windows上部署MongoDB副本集?

无法在windows上部署MongoDB副本集?
EN

Stack Overflow用户
提问于 2013-11-28 09:45:39
回答 3查看 7K关注 0票数 4

我希望部署一个mongodb副本集,其中包含配置文件中的1个主文件和2个二级文件,如下所示:

主节点的第一个配置文件。

代码语言:javascript
复制
#primary node
#===============
dbpath = C:\data\rs0\1
directoryperdb = true
bind_ip = 192.168.2.104
port = 27017
logpath = C:\mongodb2.5.3\logs\primary.log
logappend = true
noauth = true
replSet = rs0
rest = true

辅助节点的第二个配置文件

代码语言:javascript
复制
#secondary node
#===============
dbpath = C:\data\rs0\2
directoryperdb = true
bind_ip = 192.168.2.104
port = 27018
logpath = C:\mongodb2.5.3\logs\secondary1.log
logappend = true
noauth = true
replSet = rs0
rest = true

第三个配置文件用于辅助节点。

代码语言:javascript
复制
#secondary node
#===============
dbpath = C:\data\rs0\3
directoryperdb = true
bind_ip = 192.168.2.104
port = 27019
logpath = C:\mongodb2.5.3\logs\secondary2.log
logappend = true
noauth = true
replSet = rs0
rest = true

但我有个错误

代码语言:javascript
复制
 ....
    2013-11-28T16:26:59.734+0700 [initandlisten] options: { bind_ip: "192.168.2.104", config: "config\mongorep.conf", dbpath: "C:\data\rs0\1", directoryperdb: true, logappend: true, logpath: "C:\mongodb2.5.3\logs\primary.log", noauth: true, port: 27017, replSet: "rs0", rest: true }
2013-11-28T16:26:59.742+0700 [FileAllocator] allocating new datafile C:\data\rs0\1\local\local.ns, filling with zeroes...
2013-11-28T16:26:59.742+0700 [FileAllocator] creating directory C:\data\rs0\1\local\_tmp
2013-11-28T16:26:59.835+0700 [FileAllocator] done allocating datafile C:\data\rs0\1\local\local.ns, size: 16MB,  took 0.092 secs
2013-11-28T16:26:59.836+0700 [FileAllocator] allocating new datafile C:\data\rs0\1\local\local.0, filling with zeroes...
2013-11-28T16:27:00.101+0700 [FileAllocator] done allocating datafile C:\data\rs0\1\local\local.0, size: 64MB,  took 0.265 secs
2013-11-28T16:27:00.102+0700 [initandlisten] command local.$cmd command: { create: "startup_log", size: 10485760, capped: true } ntoreturn:1 keyUpdates:0  reslen:37 360ms
2013-11-28T16:27:00.102+0700 [initandlisten] waiting for connections on port 27017
2013-11-28T16:27:00.103+0700 [rsStart] replSet can't get local.system.replset config from self or any seed (EMPTYCONFIG)
2013-11-28T16:27:00.103+0700 [rsStart] replSet info you may need to run replSetInitiate -- rs.initiate() in the shell -- if that is not already done
2013-11-28T16:27:00.104+0700 [websvr] admin web console waiting for connections on port 28017
2013-11-28T16:27:01.103+0700 [rsStart] replSet can't get local.system.replset config from self or any seed (EMPTYCONFIG)
2013-11-28T16:27:02.103+0700 [rsStart] replSet can't get local.system.replset config from self or any seed (EMPTYCONFIG)
2013-11-28T16:27:03.103+0700 [rsStart] replSet can't get local.system.replset config from self or any seed (EMPTYCONFIG)
2013-11-28T16:27:04.103+0700 [rsStart] replSet can't get local.system.replset config from self or any seed (EMPTYCONFIG)
2013-11-28T16:27:05.103+0700 [rsStart] replSet can't get local.system.replset config from self or any seed (EMPTYCONFIG)

当我做同样的事情时,这个指南,http://docs.mongodb.org/manual/tutorial/deploy-replica-set-for-testing/

我也有同样的错误

代码语言:javascript
复制
replSet can't get local.system.replset config from self or any seed (EMPTYCONFIG)

我不知道我需要做什么来解决这个问题,请帮助我,非常感谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-07-24 10:39:22

在配置文件中添加/更改rs.initiate()值后,在mongo控制台中运行replSet

票数 5
EN

Stack Overflow用户

发布于 2014-12-30 18:10:04

您可以在一行中同时编写startset和initiate,它将确保startSet完成后立即启动initiate。

代码语言:javascript
复制
replicaSet.startSet();replicaSet.initiate()
票数 1
EN

Stack Overflow用户

发布于 2015-03-10 04:58:23

你是偶然上EC2的吗?在运行rs.initiate()时,我遇到了“无法启动:在复制配置中找不到self”的相同问题。

我在某个地方读到,在EC2上,它总是会出错本地主机IP,所以我在/etc/mongo.conf中显式地添加了EC2私有IP。

e.g

bind_ip=10.1.1.12,127.0.0.1

这解决了我的问题。rs.initiate()现在起作用了

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20262595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档