淺談MongoDB的備份方式
簡要說一下MongoDB的備份方式:
1. mogodump / mongorestore
這2命令將mongodb的數(shù)據(jù)dump為BSON格式,需要的時候可以恢復。
這種方式作為小的數(shù)據(jù)庫還適用。但如果是sharding或者幾百G數(shù)據(jù)以上的話
就幾乎不可用了。因為BSON及其占用空間。
2. Slave Replication
這是最適合和可靠的,適合生產(chǎn)環(huán)境。MongoDb支持master+多個slave。因此可以很方便的起一個slave來進行備份。
但是需要注意的是如果數(shù)據(jù)量很大的話,如果是新建的slave,速度又沒有保證的話,一定要調(diào)高 oplogSize 的大小,對于一個300G的數(shù)據(jù)庫,
可以調(diào)到60G以上。這樣避免同步到中間出現(xiàn)oplogSize不足等異常。
3. 關(guān)于增量熱備份
對于某些熱衷單獨文件備份的同志,也可以考慮使用“增量熱”備份的方式作為最后的屏障。
做法就是,最開始將某個slave暫時shutdown,然后將數(shù)據(jù)庫文件復制到另一個目錄作為增量備份的起點。
每次備份的時候,在這個目錄上起一個slave, 使用–fastsync參數(shù),同步完畢即可tar這個目錄就可以了。
這種方式的一個缺點就是如果備份周期的過長的話,空間浪費會非常大,尤其是頻繁刪除的情況下,
目前1.6以前的版本對于刪除的空間回收機制有bug。這個問題應(yīng)該在1.6版本發(fā)布時候解決。
要想回收這些空間需要repairDatabase,速度比較慢,不如直接從頭clone一個新的db了。(其實Repair的過程也就是先clone然后copy回來)。
綜上所述, 最靠譜和安全的備份方式就是用mongodb自身的同步復制機制.
最經(jīng)典也最小的生產(chǎn)環(huán)境是:
1 master + 2 slaves
以上所述就是本文關(guān)于MongoDB的備份方式的全部內(nèi)容了,希望大家能夠喜歡。
- mongodb增量/全量備份腳本的實現(xiàn)詳解
- mongodb 數(shù)據(jù)庫操作--備份 還原 導出 導入
- MongoDB整庫備份與還原以及單個collection備份、恢復方法
- MongoDB備份、還原、導出、導入、克隆操作示例
- Windows下自動備份MongoDB的批處理腳本
- Mongodb實現(xiàn)定時備份與恢復的方法教程
- Windows或Linux系統(tǒng)中備份和恢復MongoDB數(shù)據(jù)的教程
- Linux下MongoDB數(shù)據(jù)庫實現(xiàn)自動備份詳解
- MongoDB使用自帶的命令行工具進行備份和恢復的教程
- mongodb增量備份腳本的實現(xiàn)和原理詳解
相關(guān)文章
分布式文檔存儲數(shù)據(jù)庫之MongoDB訪問控制的操作方法
這篇文章主要介紹了分布式文檔存儲數(shù)據(jù)庫之MongoDB訪問控制的操作方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11
Mongodb過濾器filter選擇要返回的數(shù)組子集操作方法
Mongodb使用過濾器 $filter根據(jù)指定條件選擇要返回的數(shù)組子集,這篇文章主要介紹了Mongodb對嵌套文檔數(shù)組進行查詢操作,需要的朋友可以參考下2023-07-07
MongoDB中實現(xiàn)多表聯(lián)查的實例教程
數(shù)據(jù)庫應(yīng)用在我們的生活中是很常見的,在編輯一些應(yīng)用以及軟件的時候都需要用到數(shù)據(jù)庫來存儲數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于MongoDB中實現(xiàn)多表聯(lián)查的相關(guān)資料,需要的朋友可以參考下2022-07-07
MongoDB快速入門筆記(六)之MongoDB刪除文檔操作
這篇文章主要介紹了MongoDB快速入門筆記(六)之MongoDB刪除文檔操作 的相關(guān)資料,需要的朋友可以參考下2016-06-06

