好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > MongoDB實現備份壓縮的方法教程

MongoDB實現備份壓縮的方法教程

熱門標簽:云南外呼系統 怎么投訴地圖標注 濟南電銷機器人加盟公司 呼和浩特電銷外呼系統加盟 電銷機器人是什么軟件 老虎洗衣店地圖標注 廣州長安公司怎樣申請400電話 杭州人工電銷機器人價格 蘋果汽車租賃店地圖標注

背景及原理                                        

數據庫的備份是災難恢復的最后一道屏障,不管什么類型的數據庫都需要設置數據庫備份,MongoDB也不例外。MongoDB 3.0 后 ,數據庫可以采用Wiredtiger存儲引擎后(3.2 版本默認),在此環境下通過mongodump 備份后,產生的備份文件要遠大于數據存儲文件的大小。此外,一般MongoDB存儲的數據量比較大,備份文件也比較大,占用了很多磁盤空間。所以,研究如何實現MongoDB備份壓縮很有必要。

上圖是執行命令 db.stats() 查看某數據庫的信息。

備份文件的大小一般為dataSize的大小,所以我們希望壓縮備份,可以達到storageSize 或者更小。

一般的備份思路是先備份,后對備份文件進行壓縮。之前,我們采用的就是這種方式,例如主要壓縮命令如下

tar -cf - ${targetpath}/${nowtime} | pigz -p 10 > ${targetpath}/${nowtime}.tgz

(命令解釋: targetpath}/${nowtime 為待壓縮的備份文件;pigz 是Linux壓縮神器,可并行壓縮;-p是指定cpu的核數。)

但是這種方式,生成備份文件的過程中還是容易形成磁盤性能壓力和空間壓力。下圖為我們某臺Server 采用先備份后壓縮方式,形成的磁盤可用空間變化。

真正希望的是在備份的同時進行壓縮,這樣可用空間就比較平穩了。在MongoDB 3.2 中 引入了一種壓縮式備份【此mongodb版本必須不低于3.2】。可以使用gzip進行壓縮。這是通過在mongodump和mongorestore中引入一個新的指令行選項“- -gzip”實現的。

壓縮可用于目錄以及歸檔模型下創建的備份,壓縮還可以減少磁盤空間使用。

測試

測試環境:

測試服務器

測試數據庫

端口

文件路徑

172.X.X.245

實例全備

17219

/data/mongodb_back

172.X.X.246

QQ_DingDing

17218

/data/mongodb_back/QQ_DingDing

Step 1 壓縮式備份的命令:

./mongodump --host 172.X.X.245 --port 17219 -u 用戶名 -p "密碼" --gzip --authenticationDatabase "admin" --out /data/mongodb_back

備份后文件的大小,97M

這時候,查看備份文件的格式都變成了.gz的格式

Step 2 將備份文件copy至遠程機器上,進行還原:

以下命令是將在172.X.X.246,要求是將文件從X.245 copy至本地

scp -r root@172.X.X.245:/data/mongodb_back/QQ_DingDing

step 3 執行還原的命令

執行的命令

./mongorestore --host 172.X.X.246 --port 17218 -d QQ_DingDing -u 用戶名 -p "密碼" --gzip --authenticationDatabase "admin" /data/mongodb_back/QQ_DingDing

還原后登錄MongoDB,執行show dbs,查看此時 數據大小為500M。

補充說明 

(1)    如果不采用壓縮式的備份,備份后的文件會是多大呢?備份命令 :

./mongodump --host 172.X.X.245 --port 17219 -u 用戶名 -p "密碼" --authenticationDatabase "admin" --out /data/mongodb_back2

查看此種方法備份后的文件大小--1.5G。

以此QQ_DingDing數據庫為例,其壓縮率為(文件壓縮后的大小與壓縮前的大小之比):97M/1.5G=97/1536=6.3%

(2)   這種壓縮備份的方式的會不會帶來一些弊端:例如備份時間增長?(恢復時間增加?,請自測一下試試,嘻嘻 @@@)

以 某歸檔備份庫所在實例為例(storageSize 150G,dataSize 600G )

采用 先備份后壓縮的方式耗時1小時55分鐘

 

采用壓縮式備份(指定--gzip參數)的方式耗時 2小時33分鐘

  

產生的備份文件大小基本相等,壓縮式備份方式產生的備份文件略小

所以 壓縮式備份會導致備份時間增長。

但從空間使用的角度來講,我們仍然建議大家使用壓縮式備份,其壓縮比非常高(測試案例的壓縮比6.3%)。

附:定時清除,保留7天的紀錄

#!/bin/bash
targetpath='/backup/mongobak'
nowtime=$(date -d '-7 days' "+%Y%m%d")
if [ -d "${targetpath}/${nowtime}/" ]
then
rm -rf "${targetpath}/${nowtime}/"
echo "=======${targetpath}/${nowtime}/===刪除完畢=="
fi
echo "===$nowtime ==="

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • mongodb 數據庫操作--備份 還原 導出 導入
  • MongoDB整庫備份與還原以及單個collection備份、恢復方法
  • MongoDB備份、還原、導出、導入、克隆操作示例
  • Windows下自動備份MongoDB的批處理腳本
  • Mongodb實現定時備份與恢復的方法教程
  • Windows或Linux系統中備份和恢復MongoDB數據的教程
  • Linux下MongoDB數據庫實現自動備份詳解
  • 淺談MongoDB的備份方式
  • MongoDB使用自帶的命令行工具進行備份和恢復的教程
  • MongoDB 導出導入備份恢復數據詳解及實例

標簽:自貢 雞西 玉林 興安盟 無錫 廈門 遼陽 泰安

巨人網絡通訊聲明:本文標題《MongoDB實現備份壓縮的方法教程》,本文關鍵詞  MongoDB,實現,備份,壓縮,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MongoDB實現備份壓縮的方法教程》相關的同類信息!
  • 本頁收集關于MongoDB實現備份壓縮的方法教程的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 把女人的嗷嗷嗷叫的直播软件| 大众浴室洗澡间女士洗澡间| 午夜免费福利体验| 国产高清三级| 久久尤物视频| 我想吃掉你的胰脏在线观看| 女生下面流出来黏黏的液体| 91在线无码精品秘?蜜桃原神| 欧美一区二区三区影院| 老子午夜精品我不卡影院| 老司机深夜影院| 亚洲AV人人爽人人夜| 午夜免费看一级AAA片| wwxxxx| 丝袜公交车嗯嗯爽| 女的扒开尿口让男人桶| 精品国产一区二区三区四| 丰满少妇人妻HD高清大乳| 国产日韩免费视频| 美女吹潮啪啪免费下载软件| 波多野结衣cesd-305| 国产精品嫩草影院入口安卓版| katsumi精品作品在线播放| 国产黄色片视频| 三大高傲校花被调教成奴软件介绍| 好紧?好硬?好硬…爽| 最新最好看免费毛片基地| 国产精品激情综合久久| 性做爰A片欧美激情五月色戒| 黑丝污| 特黄AAAAAAAAA毛片免| 白嫩网红情趣内衣原图| 嫩草视频在线观看www视频| 免费秘?羞羞视频入口| 可以看女人隐私的app| 手机看片欧美日韩| 波多野结衣痴女ol丝袜系列 | 色噜噜人妻丝袜aV先锋影音先| 欧美猛男黑人gay巨大| 都安| 女女?互慰吃奶互揉的视频|