无法使用rs.add或rs.initiate(configObject)

时间:2018-09-30 21:50:19

标签: javascript mongodb

我尝试使用以下命令登录mongo shell时创建副本集:

var replConfig = {
    _id:"repl_dal",
    version: 1,
    members:[
        {
            _id:1,
            host:'127.0.0.1:27018',
            priority: 10
        },
        {
            _id:2,
            host:'127.0.0.1:27019',
        },
        {
            _id:3,
            host:'127.0.0.1:27020',
            arbiterOnly: true
        }
    ]
}

rs.initiate(replConfig)

我也尝试过:

rs.add('host:127.0.0.1:27017')

它抛出一个错误: 错误:断言失败:无法从local.system.replset检索配置对象。

1 个答案:

答案 0 :(得分:1)

您还必须使用reconfig()函数https://docs.mongodb.com/manual/tutorial/expand-replica-set/

更新副本集中的每个成员的优先级和投票。

还要确保您的mongod.conf文件列出了所有主机名,并且已将其配置为支持副本集https://docs.mongodb.com/manual/tutorial/deploy-replica-set/