⑴ 如何在mongodb上備份和恢復數據
在大數據時代,企業的應用帶來了大量的數據,它們可能具有結構化、半結構化或非結構化的性質。此外,應用程序開發周期短和可用性強都是他們要考慮的關鍵問題。考慮到這些應用程序的要求,在下一代平台3應用程序中,企業必須超越傳統的關系資料庫(IaaS或基於雲計算PaaS)。在Nosql資料庫中,像MongoDB現在就被採用了,同時又對這些下一代應用程序的企業進行了評估(如電子商務、內容管理等)。MongoDB提供了動態模式,通過自動分片易擴展、讀寫一致性和在內置中進行復制的功能。
MongoDB資料庫具有本地復制的功能,同時滿足可用性的需求。然而,數據保護要求可伸縮的時間點備份和恢復需要得到很好的解決。對於可靠的數據保護,企業需要備份和復制!沒有時間點的備份,組織會由於人為的錯誤、邏輯混亂和其他操作的失敗導致有丟失數據的風險。傳統的備份解決方案是建立在關系資料庫中,使用共享存儲和ACID事務模型,來解決結構化平台2應用程序的要求而建的。不幸的是,他們不足以解決平台 3 應用程序和分布式的資料庫(本地存儲、 最終一致性和基礎設施的彈性性質)的時間點備份要求。有幾個備用的基於腳本的解決方案(例如地層等),企業正在使用填補數據來保護縮短差距,但這些解決方案充其量算是次優的。
手動腳本解決方案
這些解決方案利用本地MongoDB快照工具和腳本將數據傳輸到輔助存儲。(通過 mongomp) 腳本自定義的每個 MongoDB 集群和需要業務作出了重大努力,以適應任何拓撲更改 (例如添加或刪除節點到 MongoDB 資料庫) 或擴大規模。此外,這些腳本不適應失敗場景,比如失敗的一個節點(一級或二級)或間歇性的網路問題。最後,恢復(「備份」)的最重要的價值是一個手動過程。因此,耗費時間(導致很高的應用程序停機時間),並包含腳本中的任何 bug 數據丟失風險。總的來說,這些解決方案工作在MongoDB環境中很小和一些允許在應用程序中丟失的數據。這些解決方案所面臨的一些關鍵問題是:
對分片配置的企業備份解決方案的不足;
當快照被取時,資料庫需要離線;
在節點故障和其他基礎設施故障下,備份和恢復都失敗了;
恢復過程是手動的並且需要驗證,從而增加恢復時間;
收集級的恢復需要耗時的手動恢復;
恢復與不同的測試/開發的拓撲(切分 → 分片)刷新是不可用的。
MongoDB支付備份和恢復(又名「MMS」)
MongoDB(公司)本身提供了一些備份MongoDB資料庫的方法。企業可以選擇從一個管理備份提供(MMS)運行在公共雲,或如果他們支付 MongoDB 的客戶,他們可能以部署本地備份服務為前提。除了成本過高,在公共雲上管理備份服務存儲的客戶數據。對於部署 MongoDB 為前提,在 WAN 上備份數據傳輸可能無法為客戶工作,並且海需要為客戶保持他們對數據內部的敏感度。此外,還有重要的數據來限制每個碎片去使用這項服務。
使用MongoDB部署備份服務是有可能的,但部署和實施過於復雜。企業需要部署8台伺服器,附加資料庫(額外的許可證)和 6-9x存儲容量。總的來說,部署備份服務是一個理論上的解決方案,帶來了顯著的CAPEX和OPEX投資:
部署多個資料庫的復雜性;
額外的基礎設施成本;
授權額外的MongoDB節點成本;
當節點失敗時,帶來備份失敗的風險;
獨立的MongoDB資料庫備份基礎設施。
實現企業客戶的數據保護要求,進入了新興的下一代分布式資料庫的時代(鍵值、圖形、文檔庫等),並且解決上述方案的局限性。Datos IO建造了產業界首次擴展數據保護軟體產品,使平台3應用程序能部署到分布式和雲資料庫上,如MongoDB和Apache Cassandra。Datos IO解決方案是剛剛興起的下一代應用程序,迎合了業主和DevOps的應用需求,並解決了部署和管理保護基礎設施操作所帶來的一切麻煩。最重要的是,它是一個可靠的和可擴展的解決方案,即使在使用節點失敗的場景下,也會通過最小化恢復時間獲得最優的性能。
⑵ Docker Mongo 容器裡面的數據怎樣備份到本地
舉個例子,mysql,我使用-v 把mysql data數據掛載到了data/mysql,數據便不會丟失。
如果需要備份的話,可以使用mongo client專用的備份容器去link後備份數據-v掛載備份到本地
⑶ mongodb 切片資料庫怎麼備份
1、導出工具:mongoexport
1、概念:
mongoDB中的mongoexport工具可以把一個collection導出成JSON格式或CSV格式的文件。可以通過參數指定導出的數據項,也可以根據指定的條件導出數據。
2、語法:
mongoexport -d dbname -c collectionname -o file --type json/csv -f field
參數說明:
-d :資料庫名
-c :collection名
-o :輸出的文件名
--type : 輸出的格式,默認為json
-f :輸出的欄位,如果-type為csv,則需要加上-f "欄位名"
3、示例:
sudo mongoexport -d mongotest -c users -o /home/python/Desktop/mongoDB/users.json --type json -f "_id,user_id,user_name,age,status"
2、數據導入:mongoimport
1、語法:
mongoimport -d dbname -c collectionname --file filename --headerline --type json/csv -f field
參數說明:
-d :資料庫名
-c :collection名
--type :導入的格式默認json
-f :導入的欄位名
--headerline :如果導入的格式是csv,則可以使用第一行的標題作為導入的欄位
--file :要導入的文件
⑷ mongodb數據備份怎麼備份
在mongodb的官方上search mongomp沒有相應的資料,自己就在shell命令行裡面 :
/data/mongodb-linux-x86_64-1.6.0/bin/mongomp --help 了一把, 自己來測試了,測試總結如下:
備份本機mongodb到/tmp/bakup目錄下面:[root@localhost csf]# /data/mongodb-linux-x86_64-1.6.0/bin/mongomp -h 192.168.0.39:10001 -d csf -o /backup/mongodb
將/tmp/backup 下面的文件導入資料庫:[root@localhost csf]#/data/mongodb-linux-x86_64-1.6.0/bin/mongorestore -h 192.168.0.39:10001 -d csf -drop --directoryperdb /backup/mongodb/csf/
【注釋】--drop參數,有此參數,則表示,先刪除所有的記錄,然後恢復。如無此參數,則恢復備份時候的數據,備份之後新增加的數據依然存在;/backup/mongodb則是備份文件存放路徑
⑸ 如何在Ubuntu 14.04上備份,恢復及遷移MongoDB資料庫
1、冷備份與恢復——創建數據文件副本(前提要停止MongoDB伺服器)直接
MongoDB所數據都存儲數據目錄默認/data/db/(WindowsC:\data\db\)啟MongoDB用--dbpath指定我自設置數據存儲目錄
備份MongoDB數據:要簡單創建數據存儲目錄副本直接份
恢復MongoDB數據:MongoDB啟用--dbpath指定數據存儲目錄副本位置
伺服器運行情況直接風險能數據已經遭破壞種式創建數據目錄副本需要關閉MongoDB伺服器前提數據目錄存儲關閉刻數據快照伺服器重新啟前復制目錄作備份
,
⑹ mongodb 資料庫有沒有自動備份
為了提高線上 mongoDB 的可用性,使用復制集是最合適的。
當一個 mongo 實例掛了後,自動切換到例外一個。
還有,在一定場景下,復制集可以提高讀的性能。當然前提是你有多餘的機器。
⑺ 徐州騰訊雲代理商,騰訊雲資料庫MongoDB怎麼樣
騰訊雲雲資料庫MongoDB版支持自動備份和手動備份,騰訊雲MongoDB還不錯,即使是單節點的都很好,想不到時魚科技知名度這么高呀,我也是找的這家開的。。滿意我的回答嗎?如果滿意請採納下
⑻ mongo資料庫備份 大小變化
由大到小。
對於任意類型的已備份時間點,包括已開啟或未開啟重刪、壓縮的完全、增量、差異備份時間點,其都能夠提供在秒級時間內恢復該時間點的對應的虛擬機及其數據,分鍾級恢復業務系統運行,整個過程不對原始備份數據產生任何影響。
最大限度減少因災難或故障造成核心業務中斷,並保證了原始備份數據的安全。該功能與備份數據容量無關,恢復時間恆定,有效降低用戶對備份系統的配置管理成本。
⑼ 如何在MongoDB上備份和恢復數據
方法/步驟在mongodb的官方上search mongomp沒有相應的資料,自己就在shell命令行裡面 : /data/mongodb-linux-x86_64-1.6.0/bin/mongomp --help 了一把, 自己來測試
⑽ 如何將阿里雲mongodb的數據備份導入windows
windows怎麼用mongodb導入數據
MongoDB是目前非常流行的一種NoSQL資料庫,其靈活的存儲方式備受開發人員青睞。本文就介紹一下如何安裝並設置成Windows服務的方法。
1、安裝MongoDB
Windows版本的MongoDB無需安裝,只要解壓就能使用了。
2、將MongoDB設置成Windows服務
這個操作就是為了方便,每次開機MongoDB就自動啟動了。
首先在解壓後的MongoDB文件夾裡面建立data和logs兩個目錄,看名字就知道,data存放數據,logs存放日誌文件。
然後建立文本文件:mongod.cfg
裡面寫上(注意,裡面的路徑要根據你的MongoDB實際路徑):
logpath=E: oolsmongodb-win32-i386-2.6.4logsMongoDB.log
dbpath=E: oolsmongodb-win32-i386-2.6.4data
然後在命令行裡面運行:
mongod --config E: oolsmongodb-win32-i386-2.6.4mongod.cfg --install
這樣就在Windows下成功建立了MongoDB的服務。
在「運行」中輸入「services.msc」,打開「服務」管理界面。
點擊列表中的「MongoDB」,在點擊「啟動」按鈕,就將MongoDB成功啟動了。