標籤:ref 執行個體 在伺服器 匯出 rop server1 img store int
MongoDB資料備份
在Mongodb中我們使用mongodump命令來備份MongoDB資料。該命令可以匯出所有資料到指定目錄中。
mongodump命令可以通過參數指定匯出的資料量級轉存的伺服器。
文法
mongodump命令指令碼文法如下:
>mongodump -h dbhost -d dbname -o dbdirectory
執行個體
先建立一個庫,並插入內容,已驗證備份效果
> use mydb
switched to db mydb
> db.createCollection('db') // 建立一個集合
{ "ok" : 1 }
> show collections // 查看集合
db
mydb
如下進行備份
[[email protected] ~]# mongodump -h 127.0.0.1 -d mydb -o /mnt/ //將mydb庫備份到/mnt/
如下,可見資料已經備份到/mnt/下
mongodump 命令選擇性參數列表如下所示:
[[email protected] ~]# mongodump --collection db -d mydb // 備份mydb庫中的db集合
文法 |
描述 |
執行個體 |
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命令指令碼文法如下:
>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 選項。
執行個體
[[email protected] ~]# mongorestore -h 127.0.0.1:27017 -d mydbb /mnt/mydb 將/mnt/mydb路徑下的內容恢複到資料庫mydbb
進入mongo去查看
> use mydbb
switched to db mydbb
> show collections
db
mydb
可以看到在mydbb中資料已經恢複過來。
MongoDB的備份與恢複