mongodb副本集原理
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,1.原理:副本集群每2秒发一次心跳,如果10秒过后没收到则标记为不可达。MongoDB在主数据库上应用数据库操作,然后在主数据库的操作日志中记录该操作。然后,辅助成员将这些操作复制并应用到异步过程中。
千家信息网最后更新 2025年12月02日mongodb副本集原理
1.原理:
副本集群每2秒发一次心跳,如果10秒过后没收到则标记为不可达。
MongoDB在主数据库上应用数据库操作,然后在主数据库的操作日志中记录该操作。然后,辅助成员将这些操作复制并应用到异步过程中。所有副本集成员在local.oplog.rs集合中都包含操作日志的副本 ,默认大小为磁盘的5%,但不记录查询操作。oplogSize可以在/etc/mongdb.conf中指定大小
replication: oplogSizeMB: replSetName: secondaryIndexPrefetch: enableMajorityReadConcern: 2.mongdb副本集中的成员角色:
primary: 负责写入数据
seconary: 负责同步主上的数据,提供读服务
仲裁节点: 不保有数据,不参与选主,只进行选主投票
副本集选举通过优先级,范围0-1000,0为仲裁节点,不参与选举。默认是1
3.如何设置?
MongoDB Enterprise shard-rs:PRIMARY> config=rs.conf()MongoDB Enterprise shard-rs:PRIMARY> config{ "_id" : "shard-rs", "version" : 3, "protocolVersion" : NumberLong(1), "writeConcernMajorityJournalDefault" : true, "members" : [ { "_id" : 0, "host" : "worker2:27020", "arbiterOnly" : false, "buildIndexes" : true, "hidden" : false, "priority" : 1, "tags" : { }, "slaveDelay" : NumberLong(0), "votes" : 1 }, { "_id" : 1, "host" : "worker2:27021", "arbiterOnly" : false, "buildIndexes" : true, "hidden" : false, "priority" : 1, "tags" : { }, "slaveDelay" : NumberLong(0), "votes" : 1 }, { "_id" : 2, "host" : "worker2:27022", "arbiterOnly" : false, "buildIndexes" : true, "hidden" : false, "priority" : 1, "tags" : { }, "slaveDelay" : NumberLong(0), "votes" : 1 } ], "settings" : { "chainingAllowed" : true, "heartbeatIntervalMillis" : 2000, "heartbeatTimeoutSecs" : 10, "electionTimeoutMillis" : 10000, "catchUpTimeoutMillis" : -1, "catchUpTakeoverDelayMillis" : 30000, "getLastErrorModes" : { }, "getLastErrorDefaults" : { "w" : 1, "wtimeout" : 0 }, "replicaSetId" : ObjectId("5dd8bf958b8ea486b84c23b2") }}修改id值为2的分片优先级为3,当primary,则id值为2的成为prmary
config.members[2].priority=3
故意停掉27020进程
kill -9 82609
查看id值为2的主机是否成为primary
进入27022的mongdb:
MongoDB Enterprise shard-rs:PRIMARY> use adminswitched to db adminMongoDB Enterprise shard-rs:PRIMARY> db.isMaster(){ "hosts" : [ "worker2:27020", "worker2:27021", "worker2:27022" ], "setName" : "shard-rs", "setVersion" : 4, "ismaster" : true, # 成为primary "secondary" : false,
数据
副本
数据库
优先级
大小
成员
日志
节点
仲裁
应用
选举
原理
中指
主机
标记
磁盘
范围
角色
过后
过程
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
如何检测服务器端口被占用
杭州康琪网络技术有限公司
福州祺超网络技术
青少年网络安全知识漫画版来啦
网络安全级别划分
融媒体公司软件开发
中国网络安全企业100强报告
运动会管理系统数据库分析与实现
山西时间同步服务器云主机
云服务器管理费
手机管理云服务器文件
怎么快速替换数据库
福建趋链软件开发有限公司
小服务器机箱
网络技术服务咨询口碑推荐
网络技术的预计市场占有率
如何查看自己的云服务器被谁登录
软件开发定金未交齐
专利检索常用数据库
oracle切换数据库语句
网络安全培训会议上讲话
php数据库备份类
攀枝花软件开发大概费用
深圳的高科技互联网有多少家
贝塔服务器
pg数据库ctid
归属位置寄存器数据库
web数据库需求分析
企业十三五网络安全远规划
来安口碑好软件开发技术大概费用