MongoDB 復制集狀態查看


 

MongoDB一共有10種狀態,官方將其分為3大類,核心狀態(Core States)為三種成員類型對應的屬性(PRIMARY/SECONDARY/ARBITER),還有7種屬性,被分為其他狀態(Other States)和錯誤狀態(Error States)兩類。

 

按照時間序,其他狀態分別為STARTUP、STARTUP2和RECOVERING。每個復制集成員在mongod啟動后,都先進入STARTUP狀態,然后加載成員的復制集配置,之后進入到STARTUP2狀態。如果該成員需要進行初始同步(initial sync),那么它將長期處於該狀態,知道同步完所有的數據和索引。隨后進入到RECOVERING狀態,處於該狀態的成員不能接受客戶端的讀請求,也不能被選舉為Primary,但可以進行投票選舉。

 

錯誤狀態如下所示:若成員已加入了復制集,但還未進行狀態信息同步的,會被其他復制集成員標記為UNKNOWN;若成員不再能夠通過心跳來進行狀態同步,即失去聯系,則被其他成員標記為DOWN;REMOVED表示該成員已經被移出復制集;成員處於rollback過程時,狀態為ROLLBACK,該狀態在舊的primary重新加入復制集時可能出現,用於回滾其上還未同步到其他Secondary的操作;FATAL狀態表示成員遇到了無法恢復的錯誤,必須進行人工處理。

選舉行為除了受vote和priority兩個屬性影響外,成員的狀態也會影響選舉,僅有PRIMARY, SECONDARY, RECOVERING, ARBITER和ROLLBACK五種狀態的成員允許進行投票操作。

 

轉載自:https://www.cnblogs.com/163yun/p/9810852.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM