MongoDB复制集成员类型

Posted Bien94

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB复制集成员类型相关的知识,希望对你有一定的参考价值。

  (1)Arbiter节点——只参与投票,不能被选举为Primary,并且不从Primary同步数据;它本身不存储数据,是非常轻量级的服务;从3.6版本起,Arbiter必须设置Priority为0。推荐在生产库中尽量不要使用Arbite节点。

  (2)Priority节点——选举优先级为0,不会被选举为Primary。从3.2版本起,Priority大于0的vote必须为1,而vote为0的Priority必须为1;若低优先级的Secondary被高优先级的Secondary选举为Primary,则它会继续选举直到高优先级的Secondary成为Primary。

  (3)Vote 0

  MongoDB 3.0复制集成员最多为50个,参与Primary选举投票的成员最多为7个,其他成员(Vote0)的vote属性必须设置为0,即不参与投票。

  从3.2版本起,vote为0的节点不能成为主节点,vote为1的节点只能从vote为1的节点同步。

  能发起选举的节点是属于以下五种状态中的某一种:

  • PRIMARY
  • SECONDARY
  • RECOVERING
  • ARBITER
  • ROLLBACK

  (4)Hidden节点——不会被选举为主节点,并且对Driver不可见,可以用来做数据备份和离线计算。

  (5)Delayed节点——必须是Hidden节点,并且数据落后于Primary一段时间(时间长短可以配置),该类节点可以用来恢复数据。

  (6)副本集rollback过程

  回滚只会发生在主节点的写操作没能成功在从节点上应用就“Down"掉的情况下,当主节点重新以一个从节点加入复制集时,它将进行“回滚”,并且将回滚的数据写到单独的rollback目录下,进节点上的写操作将于复制集中其他成员的写操作保持一致。此外,rollback的数据不能超过300MB。

以上是关于MongoDB复制集成员类型的主要内容,如果未能解决你的问题,请参考以下文章

MongoDB复制集成员类型

MongoDB选举过程

MongoDB副本集主节点的选举过程

Mongodb副本集管理

在AWS :: MongoError上使用解析服务器的MongoDB Atlas:找不到有效的复制集成员

mongodb副本集原理