2016-11-14 83 views
1

我试图设置为0,通过连接到主一个蒙戈外壳副本集成员的表决票数,但我得到一个错误,当我打电话:MongoDB副本集的无投票权成员可以成为主要成员?

rstest:PRIMARY> rs.reconfig(conf) 
{ 
    "ok" : 0, 
    "errmsg" : "priority must be 0 when non-voting (votes:0)", 
    "code" : 103 
} 

我要做的就是:

rstest:PRIMARY> conf = rs.conf() 
    ...  //the conf document 
rstest:PRIMARY> conf.members[0].votes = 0 
rstest:PRIMARY> rs.reconfig(conf) 

conf.members [0]二次的文档的conf

在这个link的MongoDB的文档SA YS:

...

cfg = rs.conf() 
cfg.members[3].votes = 0 
cfg.members[4].votes = 0 
cfg.members[5].votes = 0 
rs.reconfig(cfg) 

该序列根据部件阵列在 RS的输出的顺序给出了0票的 的第四,第五,和第六成员组的.conf()。该设置允许该组选择这些成员作为主要成员,但不允许他们在选举中投票。

...

但返回的错误消息说我要为无投票权设置优先级= 0,但是这暗示该成员不能是主。

我不明白我在做什么或错在哪里?

非常感谢

+1

欢迎来到SO。您的问题可能更适合[dba.stackexchange.com](http://dba.stackexchange.com/),但请务必访问他们的[帮助中心](http://dba.stackexchange.com/help)页面你知道什么网站是关于 – styvane

+0

你可以发布你的配置文件或替代成员4和5的配置部分 –

回答

0

你的问题是,目前的MongoDB的版本不允许0票上的节点什么是优先级> 0。“老” MongoDB的版本中,你能做到这一点。如果我记得正确的,2.6是最后的版本,你可以做到这一点...