Mongo数据库副本集配置问题

时间:2020-04-05 04:02:08

标签: mongodb replicaset

我知道我们至少需要3台服务器用于mongo副本集,但是我正尝试仅配置两台服务器来配置Mongo DB副本集,如果我想添加更多节点。请让我知道我可以在哪里添加仲裁器节点,以及如何使用那些(主次要仲裁)配置来配置副本集

1 个答案:

答案 0 :(得分:0)

步骤1:启动三个mongod实例,如果所有实例都使用同一服务器,请确保更改每个mongod的端口和dbpath。 如果您使用其他服务器,则所有命令都可以将端口设置为27017。

mongod --replSet rs0 --port 27017 --bind_ip localhost,<hostname(s)|ip address(es)> --dbpath /srv/mongodb/rs0-0  --oplogSize 128

第2步:使用上述方法启动3个实例后,您将连接到任何服务器上的mongo shell并声明“ cfg”变量。

cfg = {
  _id: "rs0",
  members: [
    {
     _id: 0,
     host: "<hostname1>:27017"
    },
    {
     _id: 1,
     host: "<hostname2>:27017"
    }
   ]
}

并运行以下命令来配置副本集。 注意:如果所有实例都使用同一服务器,则将成员_id的端口号更改为1到27018。

rs.initiate( cfg )

现在,您已经成功创建了具有两个实例的副本集。

第3步:要将仲裁器添加到副本集,请使用以下命令:

rs.addArb("hostname3:27017")

注意:如果您对所有实例使用同一服务器,则与步骤2相同,将上述命令中的端口更改为27019。

希望这会有所帮助。

祝您编程愉快!在家里保持安全:)