尤溪住房和城乡建设局网站,手机开网店的免费平台,山西做网站哪个好,哪里可以下企业网站模板MongoDB复制集概述
MongoDB复制集主要用于实现服务的高可用性#xff0c;与Redis中的哨兵模式相似。它的核心作用是数据的备份和故障转移。
复制集的主要功能
数据复制#xff1a;数据写入主节点#xff08;Primary#xff09;时#xff0c;自动复制到一个或多个副本节…MongoDB复制集概述
MongoDB复制集主要用于实现服务的高可用性与Redis中的哨兵模式相似。它的核心作用是数据的备份和故障转移。
复制集的主要功能
数据复制数据写入主节点Primary时自动复制到一个或多个副本节点Secondary。故障恢复主节点失效时自动从副本节点中选举出新的主节点。
复制集的附加作用
数据分发将数据从一个区域复制到另一个区域降低读取延迟。读写分离将不同类型的负载分布在不同节点上。异地容灾在数据中心发生故障时快速切换到异地节点。
典型复制集结构
一般由三个或更多节点组成每个节点都具有投票权。结构包括一个主节点和两个或更多的副本节点。
数据复制机制
当主节点接收到修改操作如插入、更新或删除时这些更改会被记录在操作日志oplog中。副本节点不断从主节点的oplog中获取更新并在本地回放这些操作以保持与主节点数据的一致性。
故障恢复与选举
节点间定期发送心跳检测5次未收到心跳判定节点失联。主节点失联导致副本节点发起选举选出新的主节点。选举基于RAFT算法要求大多数投票节点存活。复制集最多包含50个节点但只有最多7个节点具有投票权。
影响选举的因素
集群中大多数节点必须存活。被选为主节点的节点需满足 能与大多数节点建立连接。拥有较新的oplog。有较高的优先级如果配置了的话。
复制集节点选配项
投票权v参数决定是否参与选举。优先级priority参数决定成为主节点的优先级。隐藏节点hidden参数复制数据但对应用不可见优先级为0。延迟复制slaveDelay参数复制旧数据保持时间差。从节点索引控制从节点是否建立索引。
复制集注意事项
硬件所有节点硬件配置应一致确保独立性以防同时故障。软件所有节点应运行相同版本的软件以避免兼容性问题。性能增加节点并不会提高写入性能。
复制集搭建步骤
创建数据目录例如在Linux系统上使用mkdir -p /data/db{1,2,3}。准备配置文件每个数据库应有不同的端口、数据目录和日志文件路径。 分别启动
mongod -f /data/db1/mongod.conf
mongod -f /data/db2/mongod.conf
mongod -f /data/db3/mongod.conf