# MongoDB 備份(mongodump)與恢復(mongorerstore)
## MongoDB數據備份
在Mongodb中我們使用mongodump命令來備份MongoDB數據。該命令可以導出所有數據到指定目錄中。
mongodump命令可以通過參數指定導出的數據量級轉存的服務器。
### 語法
mongodump命令腳本語法如下:
```
>mongodump -h dbhost -d dbname -o dbdirectory
```
* **-h:**
MongDB所在服務器地址,例如:127.0.0.1,當然也可以指定端口號: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 w3cschool.cc --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使用 mongorerstore 命令來恢復備份的數據。
### 語法
mongorestore命令腳本語法如下:
```
>mongorestore -h dbhost -d dbname --directoryperdb dbdirectory
```
* **-h:**
MongoDB所在服務器地址
* **-d:**
需要恢復的數據庫實例,例如:test,當然這個名稱也可以和備份時候的不一樣,比如test2
* **--directoryperdb:**
備份數據所在位置,例如:c:\data\dump\test,這里為什么要多加一個test,而不是備份時候的dump,讀者自己查看提示吧!
* **--drop:**
恢復的時候,先刪除當前數據,然后恢復備份的數據。就是說,恢復后,備份后添加修改的數據都會被刪除,慎用哦!
接下來我們執行以下命令:
```
>mongorestore
```
執行以上命令輸出結果如下:

- NoSQL 簡介
- 什么是MongoDB ?
- window平臺安裝 MongoDB
- Linux平臺安裝MongoDB
- MongoDB 數據庫,對象,集合
- MongoDB - 連接
- PHP安裝MongoDB擴展驅動
- MongoDB 數據插入
- MongoDB使用update()函數更新數據
- MongoDB使用- remove()函數刪除數據
- MongoDB 查詢
- MongoDB條件操作符
- MongoDB條件操作符 - $type
- MongoDB Limit與Skip方法
- MongoDB 排序
- MongoDB 索引
- MongoDB 聚合
- MongoDB 復制(副本集)
- MongoDB 分片
- MongoDB 備份(mongodump)與恢復(mongorerstore)
- MongoDB 監控
- MongoDB Java
- MongoDB PHP
- MongoDB 關系
- MongoDB 數據庫引用
- MongoDB 覆蓋索引查詢
- MongoDB 查詢分析
- MongoDB 原子操作
- MongoDB 高級索引
- MongoDB 索引限制
- MongoDB ObjectId
- MongoDB Map Reduce
- MongoDB 全文檢索
- MongoDB 正則表達式
- MongoDB 管理工具: Rockmongo
- MongoDB GridFS
- MongoDB 固定集合(Capped Collections)
- MongoDB 自動增長
- 免責聲明