MongoDB——資料備份與還原

來源:互聯網
上載者:User
資料備份:

開啟命令提示字元,進入安裝好的MongoDB的bin目錄下:

位置如下:



輸入命令:mongodump -h 127.0.0.1:27017 -d runoob -o D:\mongo\data\dump

其中:

-h:MongDB所在伺服器位址,例如:127.0.0.1,當然也可以指定連接埠號碼

-d:需要備份的資料庫執行個體,例如:runoob  (資料庫名稱,可以備份該資料庫下所有集合)

-o:備份的資料存放位置,例如:D:\mongo\data\dump ,在備份完成後,系統自動在dump目錄下建立一個runoob目錄,這個目錄裡面存放該資料庫執行個體的備份資料。

執行過程剪影如下:


查看備份後,是否有樣本資料庫的內容,存放到dump檔案夾下:


確實如我們所願資料備份到dump檔案夾下面了。 資料恢複:

方案1: 直接拷貝dump中的檔案到data目錄下,重啟mongodb服務即可

方案2:使用mongorestore命令,進行資料恢複

第一種方案比較簡單,我們這裡介紹第二種方案,採用命令的方式

為了方便測試,我們先將資料庫刪除

在mongodb shell中輸入命令

installed, will zero-out data filesMongoDB shell version: 3.0.4connecting to: test> use runoobswitched to db runoob>> db.collectionsrunoob.collections> show collectionscolflatJsonlevelJsonpostcollectionpostsrunoobsystem.indexesusers> db.dropDatabase(){ "dropped" : "runoob", "ok" : 1 }> show collections>

資料庫刪除成功

使用備份的資料進行還原

同樣開啟命令提示字元,進入安裝好的MongoDB的bin目錄下,然後輸入命令

 mongorestore -h 127.0.0.1:27017 -d runoob  D:\mongo\data\dump\runoob

-h:MongoDB所在伺服器位址

-d:需要恢複的資料庫執行個體,例如:twang,當然這個名稱也可以和備份時候的不一樣,比如test2

--directoryperdb:備份資料所在位置,例如:D:\mongo\data\dump\runoob

注意:這裡沒有--directoryperdb,嘗試過加上該命令,報錯,資料恢複失敗。去掉則成功恢複資料

執行過程剪影:


在shell中查看 show collections,所有的資料集合恢複成功。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.