您好,登錄后才能下訂單哦!
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:27017 Thu Mar 26 20:50:48.561 [rsBackgroundSync] replSet error RS102 too stale to catch up Thu Mar 26 21:00:49.632 [rsBackgroundSync] replSet error RS102 too stale to catch up, at least from dal05mgo13.sl.dx:27017 Thu Mar 26 21:00:49.632 [rsBackgroundSync] replSet error RS102 too stale to catch up Thu Mar 26 21:10:50.701 [rsBackgroundSync] replSet error RS102 too stale to catch up, at least from dal05mgo12.sl.dx:27017 Thu Mar 26 21:10:50.701 [rsBackgroundSync] replSet error RS102 too stale to catch up Thu Mar 26 21:20:51.770 [rsBackgroundSync] replSet error RS102 too stale to catch up, at least from dal05mgo13.sl.dx:27017 Thu Mar 26 21:20:51.770 [rsBackgroundSync] replSet error RS102 too stale to catch up
確認維護窗口大小
查看主副本的維護窗口和oplog大小:
rs_main:PRIMARY> db.printReplicationInfo() configured oplog size: 23552MB log 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的正常初始化同步數據恢復數據。這個方法更簡單,但是需要花更多的時間替換數據。
從副本集中的另一個成員拷貝當前的數據目錄,重啟機器。這個過程替換數據更快,但是需要更多手工步驟。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。