文章目录
  1. 1. 基本概念
  2. 2. 参数
  3. 3. 副本集例子

基本概念

副本集就是有自动故障恢复功能得主从集群。

主从集群和副本集最大的区别就是副本集没有固定的“主节点”;整个集群会选出一个“主节点”,当其挂掉后,又在剩下的从节点中选中其他节点为“主节点”,副本集总有一个活跃点(primary)和一个或多个备份节点(secondary)。

参数

replSet :副本集名称,我用的是child,其他的节点必须使用这个名字做副本集名称。
logappend:日志的写入模式是追加,不是默认的覆盖模式。
standard 常规节点:参与投票有可能成为活跃节点
passive 副本节点:参与投票,但是不能成为活跃节点
arbiter 仲裁节点:只是参与投票不复制节点也不能成为活跃节点
Priority  01000之间 ,0代表是副本节点 ,11000是常规节点
arbiterOnly : true 仲裁节点

副本集例子

  1. 启动三个节点

    mongod --dbpath E:\mongodbdata\1111 --logpath E:\mongodbdata\logs\1111\logs.txt --logappend --port 1111 --replSet child/localhost:2222
    这是第一个节点,其他类似。
    
  2. 初始化设置

    随便打开一个节点shell

    use admin
    
    db.runCommand({"replSetInitiate":
    {
      "_id":'child',
       "members":[{
            "_id":1,
        "host":"127.0.0.1:1111"
        },{
        "_id":2,
        "host":"127.0.0.1:2222"
        },{
        "_id":3,
        "host":"127.0.0.1:3333"
        }]
        }
    })
    
  3. 查看副本集状态

    rs.status()
    
文章目录
  1. 1. 基本概念
  2. 2. 参数
  3. 3. 副本集例子