詳解MongoDB數(shù)據(jù)還原及同步解決思路
mongodb數(shù)據(jù)如何還原,同步到其他系統(tǒng)?只要我們了解了數(shù)據(jù)庫日志原理,一切都是那么簡單
oplog原理
Oplog.rs 表類型為 Capped Collections
- 表類型:
Capped collections它的插入速度非??欤竞痛疟P的寫入速度差不多,并且支持按照插入順序高效的查詢操作。Capped collections的大小是固定的,它的工作方式很像環(huán)形緩沖器(circular buffers), 當(dāng)剩余空間不足時(shí),會(huì)覆蓋最先插入的數(shù)據(jù)。
優(yōu)勢:
Capped collections的特點(diǎn)是高效插入和檢索,所以最好不要在Capped collections上添加額外的索引,否則會(huì)影響插入速度。
插入快: 沒有索引
檢索快: natural【插入順序】/∗默認(rèn)只支持按自然順序(即插入順序)返回結(jié)果Cappedcollections可以使用" role="presentation">natural【插入順序】/默認(rèn)只支持按自然順序(即插入順序)返回結(jié)果Cappedcollections可以使用natural【插入順序】/默認(rèn)只支持按自然順序(即插入順序)返回結(jié)果Cappedcollections可以使用natural操作符按插入順序的正序或反序返回結(jié)果
*/
Oplog為了保證插入性能,不允許額外創(chuàng)建索引。
Capped collections可以用于以下場景:
存儲(chǔ)日志: Capped collections的first-in-first-out特性剛好滿足日志事件的存儲(chǔ)順序;
緩存小量數(shù)據(jù):因?yàn)榫彺娴奶攸c(diǎn)是讀多寫少,所以可以適當(dāng)使用索引提高讀取速度。
限制:
如果更新數(shù)據(jù),你需要為之創(chuàng)建索引以防止collection scan;
更新數(shù)據(jù)時(shí),文檔的大小不能改變。比如說name屬性為'abc',則只能修改成3個(gè)字符的字符串,否則操作將會(huì)失敗;
數(shù)據(jù)不允許刪除,如果非刪除不可,只能drop collection
db[‘oplog.rs'].find({}).sort({$natural: -1})
Oplog是一種特殊的Capped collections,特殊之處在于它是系統(tǒng)級(jí)Collection,記錄了數(shù)據(jù)庫的所有操作,集群之間依靠Oplog進(jìn)行數(shù)據(jù)同步。Oplog的全名是local.oplog.rs,位于local數(shù)據(jù)下。
總結(jié)
以上所述是小編給大家介紹的MongoDB數(shù)據(jù)還原及同步解決思路,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
mongodb 中rs.stauts()命令參數(shù)解析
MongoDB的rs.status()命令是查看副本集狀態(tài)的重要工具,它可以展示副本集中各個(gè)成員的角色、健康狀態(tài)、同步進(jìn)度等關(guān)鍵信息,本文介紹mongodb 中rs.stauts()命令參數(shù)解析,感興趣的朋友跟隨小編一起看看吧2024-09-09vs2019 下用 vb.net編寫窗體程序連接 mongodb4.2的方法
這篇文章主要介紹了vs2019 下用 vb.net編寫窗體程序連接 mongodb4.2,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08SpringBoot?集成MongoDB實(shí)現(xiàn)文件上傳功能
這篇文章主要介紹了SpringBoot?集成MongoDB實(shí)現(xiàn)文件上傳,主要通過示例代碼記錄文件上傳的步驟,代碼簡單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04Mongodb使用$<identifier>過濾更新數(shù)組元素的示例代碼
帶有過濾器的位置操作符$<identifier>定義數(shù)組中數(shù)據(jù)更新時(shí),只符合identifier定義條件的元素才可以更新,本文給大家介紹了Mongodb使用$<identifier>過濾更新數(shù)組元素的操作方法,很值得探討和學(xué)習(xí),需要的朋友可以參考下2024-06-06MongoDB游標(biāo)超時(shí)問題的4種解決方法
這篇文章主要給大家介紹了關(guān)于MongoDB游標(biāo)超時(shí)問題的4種解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MongoDB具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09