1. 程式人生 > >MongoDB備份與恢復

MongoDB備份與恢復

rop In class mon 信息 服務 mgo cast .com

系統環境

服務器系統:Windows Server2012 R2

MongoDB:v3.4.4

可以通過命令:mongo -version 查看版本信息

技術分享圖片

場景:備份數據庫smp_maint_2,還原到新建的數據庫smp_maint_2_restore中。

MongoDB數據庫備份

1、語法:
mongodump -h dbhost -d dbname -o dbdirectory
參數說明:
-h: MongDB所在服務器地址,例如:127.0.0.1,當然也可以指定端口號:127.0.0.1:27017
-d: 需要備份的數據庫實例,例如:test

-o: 備份的數據存放位置,例如:/home/mongodump/,當然該目錄需要提前建立,這個目錄裏面存放該數據庫實例的備份數據。
2、實例:

先通過服務器上面安裝的Mongodb服務器找到服務的所在路徑:C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe

技術分享圖片

先在服務器上面創建文件目錄:E:\data\home\momgodump

然後以管理員身份打開CMD,然後跳轉到Mongodb所在路徑,執行如下命令:

mongodump -h 192.168.1.18:27017 -d smp_maint_2 -o E:\data\home\momgodump

運行結果如下:

技術分享圖片

備份完成之後,我們再看下備份目錄下面自動創建了一個和數據庫名稱一樣的目錄,目錄下面有如圖所示備份文件

技術分享圖片

MongoDB數據庫恢復

1、語法:
mongorestore -h dbhost -d dbname --dir dbdirectory

參數或名:
-h: MongoDB所在服務器地址
-d: 需要恢復的數據庫實例,例如:test,當然這個名稱也可以和備份時候的不一樣,比如test2
--dir: 備份數據所在位置,例如:/home/mongodump/itcast/

--drop: 恢復的時候,先刪除當前數據,然後恢復備份的數據。就是說,恢復後,備份後添加修改的數據都會被刪除,慎用!
2、實例:

新建mongodb數據庫smp_maint_2_restore,然後執行如下命令:

mongorestore -h 192.168.1.18:27017 -d smp_maint_2_restore --dir E:\data\home\momgodump\smp_maint_2

運行結果如下所示:

技術分享圖片
技術分享圖片

還原成功!

MongoDB備份與恢復