一.副本集相关知识介绍
1.复制集特点
- 主节点唯一
主节点唯一,但是不固定.(不确定因素的原因是,主节点挂了的话,会重新选举出一个新的主节点)
- 大多数原则
大多数原则,即1/2原则,一个复制集集群中,如果有大于等于1/2的节点不可用的话,那么整个进群将不可写,只可读(注:实际上应该是 投票权重的1/2
- 从库无法写入
从库无法写入,root权限也不行.这一点与mysql不同,mysql从库无法写入的原因是设置了readOnly
- 复制集可以自动进行容灾
主节点服务不可用,会自动选举出新的主节点
2.复制集节点介绍
- 数据节点—主节点
主节点,负责数据的读写操作,并把写的信息记录到OpLog中(mongo隐藏的库local 的oplog集合)
- 数据节点—从节点
复制主节点的数据,备份容灾用,主节点挂掉,会重新成为新的主节点,从节点无法进行写操作 即使,拥有root权限也不行(不同于mysql)
- 投票节点
不负责数据的存储和复制,只负责投票
注:理论上一个mongo复制集,可以有一个主节点,多个从节点,多个投票节点
3.复制集工作方式
- 客户端驱动指向mongo