mongodb幾種備份恢復方式比較

      網(wǎng)友投稿 1257 2022-05-28

      總覽

      mongodb幾種備份恢復方式比較

      MongoDB server 提供了兩種備份恢復的方法:一種是通過拷貝底層數(shù)據(jù)文件進行備份(這種方法又細化為兩個不同的操作模式:1.文件快照 2.cp or rsync 等類似的文件傳輸復制工具)。第二種是通過mongodb 的備份恢復工具mongodump,mongorestore進行對應的備份恢復操作。兩種方法有各種的優(yōu)缺點和適應的應用場景,下面詳細進行對比分析。

      1.通過文件快照(Filesystem Snapshots)進行備份和恢復

      概述

      文件快照備份依賴mongodb宿主機器的操作系統(tǒng)(linux 的LVM特性),它使用操作系統(tǒng)級別的工具對mongodb數(shù)據(jù)文件所在的設備進行拷貝備份,由于這種方法使用的是操作系統(tǒng)級別的工具,因此拷貝備份效率高并且可靠性也高,同時也決定了它的一個缺點:需要宿主環(huán)境的支持。

      操作步驟(linux LVM)

      ·? ?? ???創(chuàng)建快照:lvcreate --size 100M --snapshot --name mdb-snap01 /dev/vg0/mongodb

      ·? ?? ???歸檔快照:umount/dev/vg0/mdb-snap01; dd if=/dev/vg0/mdb-snap01 | gzip > mdb-snap01.gz

      ·? ?? ???恢復快照:lvcreate--size 1G --name mdb-new vg0;gzip -d -c mdb-snap01.gz | ddof=/dev/vg0/mdb-new;mount /dev/vg0/mdb-new /srv/mongodb

      操作步驟(未開啟日志功能或日志文件和數(shù)據(jù)文件不在同一個卷)

      ·? ?? ???刷新寫操作到硬盤并鎖住數(shù)據(jù)庫:db.fsyncLock()

      ·? ?? ???創(chuàng)建快照

      ·? ?? ???快照完成后,解鎖數(shù)據(jù)庫:db.fsyncUnlock()

      優(yōu)點

      ·? ?? ???支持時間點的快照備份(point-in-time snapshots)

      ·? ?? ???更高的效率和可靠性

      ·? ?? ???在滿足一定條件下能夠獲取分片集群的一致性快照備份

      ·? ?? ???提供增量備份

      缺點

      ·? ?? ???需要文件系統(tǒng)支持時間點快照(linux:the Logical Volume Manager LVM)

      ·? ?? ???需要開啟日志功能(journalingenabled)并且日志文件和數(shù)據(jù)文件位于同一個文件卷上(3.2 WiredTiger 數(shù)據(jù)文件和日志文件可以位于不同的文件卷),否則無法保證快照有效性和一致性

      ·? ?? ???為獲取分片集群的一致快照,需要關閉集群均衡器并在大致相同的時刻從集群的每個分片和配置服務器上抓取快照

      ·? ?? ???沒有開啟日志功能時,備份前需要將寫落地硬盤,備份中停止任何寫操作(MMAPv1)

      ·? ?? ???MMAPv1通過日志功能在快照時無需停止寫達到一致狀態(tài), WiredTiger通過thelast checkpoint 達到一致狀態(tài)(Checkpoints 每2G數(shù)據(jù)或每分鐘)

      ·? ?? ???快照創(chuàng)建整個磁盤的鏡像,因此將數(shù)據(jù)文件,配置,日志放在一個邏輯磁盤上節(jié)約空間

      版本特性

      ·? ?? ???MongoDB 3.2以上的WiredTiger引擎支持卷級備份,也就是說日志文件(journal files)和數(shù)據(jù)文件位于不同的磁盤卷上,而3.2以前版本的WiredTiger引擎如果要支持卷級備份,日志文件和數(shù)據(jù)文件必須在同一個卷上(只要開啟日志就無需刷新硬盤并停寫進行備份)

      2.通過cp?或rsync?備份和恢復

      概述

      利用cp 或者rsync 等類似的文件復制同步工具對mongodb 的數(shù)據(jù)庫文件進行拷貝備份

      優(yōu)點

      ·? ?? ???無需文件系統(tǒng)支持快照功能

      缺點

      ·? ?? ???備份拷貝前必須停止所有的對mongod的寫操作,否則將是一個無效的備份

      ·? ?? ???不支持副本集時間點級(point in time recovery)恢復,并且很難管理大型分片集群

      ·? ?? ???備份文件占有更多的空間(包括索引以及重復的底層文件填充和碎片)

      操作步驟

      ·? ?? ???執(zhí)行對應的文件傳輸工具命令直接拷貝數(shù)據(jù)文件

      3.通過mongodump/mongorestore工具進行備份和恢復

      概述

      在運行的mongod程序上,mongodump從MongoDB數(shù)據(jù)庫中讀取數(shù)據(jù)生產(chǎn)一個高質(zhì)量的BSON格式文件,mongorestore則可以將其還原為MongoDB數(shù)據(jù)庫。

      優(yōu)點

      ·? ?? ???備份恢復小型mongoDB集群更簡單和效率,備份文件占有的空間更少(只備份文檔,不備份索引)

      ·? ?? ???備份過程中應用可以繼續(xù)修改數(shù)據(jù)(記錄oplog,通過--oplog選項達到數(shù)據(jù)狀態(tài)一致)

      缺點

      ·? ?? ???備份的數(shù)據(jù)庫中不包含local數(shù)據(jù)庫,只備份數(shù)據(jù)庫的文檔不備份數(shù)據(jù)庫索引,因此恢復后必須重建索引

      ·? ?? ???備份恢復大型mogoDB集群不理想(效率不高)

      ·? ?? ???備份時會影響運行中的mongod的性能(產(chǎn)生網(wǎng)絡流量)

      ·? ?? ???備份的數(shù)據(jù)比系統(tǒng)內(nèi)存大時,查詢操作會引起頁錯誤

      ·? ?? ???必須擁有對應的訪問控制權(quán)限(執(zhí)行find操作的權(quán)限,內(nèi)建的backup角色擁有備份的權(quán)限)

      ·? ?? ???mongodump不同版本的格式不能兼容,不要使用新版本的mongodump備份老版本的數(shù)據(jù)

      操作步驟

      ·? ?? ???備份:mongodump--host mongodb.example.net --port 27017 --collection myCollection --db test--out /data/backup/(會覆蓋備份目錄中的文件)

      ·? ?? ???恢復:mongorestore--port --oplogReplay

      4.總結(jié)

      Snapshot備份時由于是對整個磁盤卷進行快照,為了減少不必要的數(shù)據(jù)的備份,需要預先將mongodb的數(shù)據(jù),日志等放在一個單獨的磁盤卷上。而mongodump備份時只備份數(shù)據(jù)文檔,不備份索引,恢復后需要重建。但mongodump可以備份指定的數(shù)據(jù)庫和集合,備份數(shù)據(jù)更靈活些,但備份的時候會對運行的mongodb產(chǎn)生性能影響。兩者對分片集群備份,要產(chǎn)生同一時間點的一致備份,都需要在備份期間停止應用程序?qū)ongodb的寫操作,否則兩者對分片集群的備份只能達到近似的同一時間點備份(approximately the same moment in time)。?兩者在做恢復的時候都需要對集群進行一段時間的停機操作維護。

      數(shù)據(jù)庫 MongoDB

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:linux系統(tǒng)常用目錄詳解
      下一篇:Fedora 9 Sulfur 分步安裝指南和截圖
      相關文章
      亚洲成a人无码亚洲成av无码| 亚洲日韩在线中文字幕第一页| 亚洲色在线无码国产精品不卡| 亚洲AV无码乱码在线观看牲色 | 亚洲视频在线播放| 亚洲娇小性xxxx色| 亚洲精品视频久久| 亚洲乳大丰满中文字幕| 亚洲国产天堂久久综合| 精品国产日韩久久亚洲| 四虎必出精品亚洲高清| 亚洲欧洲无码一区二区三区| 亚洲精品美女久久7777777| 亚洲高清一区二区三区电影| 亚洲乱码无人区卡1卡2卡3| 亚洲色丰满少妇高潮18p| 亚洲一区二区三区高清在线观看| 国产成人精品亚洲日本在线| 亚洲综合色丁香婷婷六月图片| 亚洲最大av资源站无码av网址| 亚洲中文久久精品无码1| 亚洲av日韩av综合| 亚洲情A成黄在线观看动漫软件| 亚洲第一男人天堂| 亚洲欧美国产精品专区久久| 亚洲av片在线观看| 亚洲中文字幕丝袜制服一区| 亚洲国产日韩在线视频| 精品亚洲麻豆1区2区3区| 亚洲人成高清在线播放| 亚洲精品永久在线观看| 精品久久亚洲一级α| 亚洲一级片内射网站在线观看| 亚洲熟妇丰满多毛XXXX| 亚洲综合一区二区精品导航| 337p欧洲亚洲大胆艺术| 国产精品亚洲一区二区麻豆| 自拍偷自拍亚洲精品偷一| 丝袜熟女国偷自产中文字幕亚洲| 久久亚洲精品成人| 亚洲另类小说图片|