MySQL数据库工程师入门实战课程视频教程
4269 人在学
之前小编介绍过了主从复制,其优点是增强了读扩展性,增强了安全性,但是,其缺点是主节点宕机,系统不可用。现在mongodb官方已经不建议使用主从模式了,替代方案是采用副本集的模式,主从模式其实就是一个单副本的应用,没有很好的扩展性和容错性。而副本集具有多个副本保证了容错性,就算一个副本挂掉了还有很多副本存在,并且解决了上面第一个问题“主节点挂掉了,整个集群内会自动切换”。
MongoDB复制(副本集)
1.MongoDB复制是将数据同步在多个服务器的过程。
2.复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性,并可以保证数据的安全性。
3.复制还允许您从硬件故障和服务中断中恢复数据。
什么是复制?
1.保障数据的安全性
2.数据高可用性(24*7)
3.灾难恢复
4.无需停机维护(如备份,重建索引,压缩)
5.分布式读取数据
通过--master和--slave设置的主从集群,只能对主节点进行数据写入,不能直接对从节点进行写操作,当主节点发生故障时,从节点不能替代主节点,下面27027是从节点。
如何解决主节点宕机系统不可用这个问题呢?——副本集。
副本集由n个mongo节点组成,能够完成数据同步的集群,并且具有故障恢复功能。它和前面介绍的主从集群相似的地方就是都具有数据备份功能,所有的写操作被分发到主节点上,读取操作被分发到从节点上。区别是副本集没有固定的主节点,整个集群自动选举出一个主节点,当其发生故障时,集群又自动选举出另一个新的节点作为主节点。可以说副本集是主从复制的高级形式。
副本集中只有一个主节点,因为只有一个节点可以接收客户端的写入操作。
可以添加一个额外的节点作为仲裁者,仲裁者不维护一个数据集。仲裁者只存在在选举中投票。如果你的副本集有偶数个成员,添加一个仲裁者,获得多数票的当选为主节点。
故障转移:
副本集特征:
N个节点的集群
任何节点可作为主节点
所有写入操作都在主节点上
自动故障转移
自动恢复
小编结语:
更多内容尽在课课家教育!