MongoDB 資料備份
在MongoDB中我們使用monogodump命令來備份MongoDB資料。該命令可以匯出所有資料到指定目錄中。monogodump命令可以通過參數指定匯出的資料量級轉存的伺服器。
文法
>mongodump -h dbhost -d dbname -o dbdirectory
·-h: MongDB所在伺服器位址,例如:127.0.0.0,當然也可以指定連接埠號碼:127.0.0.1:27017
·-d:需要備份的資料庫樣本,例如:test
·-o:備份的資料存放位置。例如:c:\data\dump,當然該目錄需要提前建立,在備份完成後,系統自動在dump目錄下建立一個test目錄,這個目錄裡面存放該資料庫執行個體的備份資料。
樣本
在本地使用 27017 啟動你的mongod服務。開啟命令提示字元視窗,進入MongoDB安裝目錄的bin目錄輸入命令mongodump:
>mongodump
執行以上命令後,用戶端會串連到ip為 127.0.0.1 連接埠號碼為 27017 的MongoDB服務上,並備份所有資料到 bin/dump/ 目錄中。命令輸出結果如下:
mongodump 命令選擇性參數列表如下所示:
文法 |
描述 |
執行個體 |
mongodump --host HOST_NAME --port PORT_NUMBER |
該命令將備份所有MongoDB資料 |
mongodump --host runoob.com --port 27017 |
mongodump --dbpath DB_PATH --out BACKUP_DIRECTORY |
|
mongodump --dbpath /data/db/ --out /data/backup/ |
mongodump --collection COLLECTION --db DB_NAME |
該命令將備份指定資料庫的集合。 |
mongodump --collection mycol --db test |
MongoDB 資料恢複
mongodb使用 mongorestore 命令來恢複備份的資料。
文法
>mongorestore -h <hostname><:port> -d dbname <path>
--host <:port>, -h <:port>:
MongoDB所在伺服器位址,預設為: localhost:27017
--db , -d :
需要恢複的資料庫執行個體,例如:test,當然這個名稱也可以和備份時候的不一樣,比如test2
--drop:
恢複的時候,先刪除當前資料,然後恢複備份的資料。就是說,恢複後,備份後添加修改的資料都會被刪除,慎用哦。
<path>:
mongorestore 最後的一個參數,設定備份資料所在位置,例如:c:\data\dump\test。
你不能同時指定 <path> 和 --dir 選項,--dir也可以設定備份目錄。
--dir:
指定備份的目錄
你不能同時指定 <path> 和 --dir 選項。
接下來我們執行以下命令:
>mongorestore
執行以上命令輸出結果如下: