replSet error RS102 too stale to catch up
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,replSet error RS102 too stale to catch up辅助副本成员需要关机增加内存,很早就提前关机,等第二天服务器起来后,去查看rs.status()信息,会捕获到"sta
千家信息网最后更新 2025年01月20日replSet error RS102 too stale to catch up
replSet error RS102 too stale to catch up
辅助副本成员需要关机增加内存,很早就提前关机,等第二天服务器起来后,去查看rs.status()信息,会捕获到"stateStr" : "RECOVERING"。其实早已超过了维护窗口时间。这时,如果运气好的话,会看到error RS102 too stale to catch up错误。而该错误是每十分钟会捕获到一次。从mongodb的日志文件可以看到:
Thu Mar 26 20:50:48.561 [rsBackgroundSync] replSet error RS102 too stale to catch up, at least from dal05mgo13.sl.dx:27017Thu Mar 26 20:50:48.561 [rsBackgroundSync] replSet error RS102 too stale to catch upThu Mar 26 21:00:49.632 [rsBackgroundSync] replSet error RS102 too stale to catch up, at least from dal05mgo13.sl.dx:27017Thu Mar 26 21:00:49.632 [rsBackgroundSync] replSet error RS102 too stale to catch upThu Mar 26 21:10:50.701 [rsBackgroundSync] replSet error RS102 too stale to catch up, at least from dal05mgo12.sl.dx:27017Thu Mar 26 21:10:50.701 [rsBackgroundSync] replSet error RS102 too stale to catch upThu Mar 26 21:20:51.770 [rsBackgroundSync] replSet error RS102 too stale to catch up, at least from dal05mgo13.sl.dx:27017Thu Mar 26 21:20:51.770 [rsBackgroundSync] replSet error RS102 too stale to catch up
确认维护窗口大小
查看主副本的维护窗口和oplog大小:
rs_main:PRIMARY> db.printReplicationInfo()configured oplog size: 23552MBlog length start to end: 38133secs (10.59hrs)oplog first event time: Mon Mar 30 2015 12:00:13 GMT-0500 (CDT)oplog last event time: Mon Mar 30 2015 22:35:46 GMT-0500 (CDT)now: Mon Mar 30 2015 22:35:46 GMT-0500 (CDT)
可以看到维护窗口为10个小时,oplog大小为23G。
辅助副本的维护窗口大小最好跟主副本成员保持一致,让辅助副本能保存从主副本同步过来的oplog。
如何重建oplog?
以standalone方式启动,执行如下删除和创建脚本:
> use local> db.oplog.rs.drop()> db.createCollection("oplog.rs", {"capped" : true, "size" : 23 * 1024 * 1024 * 1024})或> db.runCommand( { create: "oplog.rs", capped: true, size: (23 * 1024 * 1024 * 1024) } )
replSet error RS102 too stale to catch up如何处理?
副本集错误RS102太陈旧而无法跟上。说明此节点由于脱离副本集时间太长,已经跟不上整个集群了。需要重新同步该辅助副本成员。可参考:
http://docs.mongodb.org/manual/tutorial/resync-replica-set-member/
官方手册建议,通过移除数据实施初始化同步(initial sync)来完全重新同步成员。
MongoDB提供了两种实施初始化同步的方法:
清空数据目录,重启mongod。让MongoDB的正常初始化同步数据恢复数据。这个方法更简单,但是需要花更多的时间替换数据。
从副本集中的另一个成员拷贝当前的数据目录,重启机器。这个过程替换数据更快,但是需要更多手工步骤。
副本
数据
同步
成员
大小
辅助
时间
错误
方法
更多
目录
陈旧
一致
信息
内存
官方
小时
建议
手册
手工
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
福建纵腾网络技术有限
传奇数据库添加魔法盾
数据库查一个字段的拼接
微型计算机三级网络技术
软件开发技术扫盲
全球企业消减网络安全预算
网络安全工作新台阶
宁河租房软件开发
苏州网络技术服务报价
中兴终端部门软件开发
什么是分布式和数据库
实体网络技术公司
太原拼接服务器供应商
jdbc链接oracle数据库
云服务器是不是就是网站空间
金东网络技术
简述移动数据库的关键技术
杭州齐尚网络技术有限公司
网络安全认识有几条
姜强网络安全行业
七日杀怎么找服务器
传奇数据库添加魔法盾
生成焓 数据库
百科论坛万方数据库
数据库一句话木马 asp
防骗网络安全教育
网络安全法与国家安全
37互娱软件开发工资
信息系统与数据库技术课后答案
安装数据库是最后一步