對整庫備份和恢復:
使用mongodump進行資料備份:
>mongodump -h localhost:27017
-d test -o
*./desktop/
-h 指定主機和埠號
-d 指定備份的資料庫
-o 指定儲存資料報的目錄
使用mongorestore進行資料備份:
>mongorestore -h localhost:27017
-d test -dir
*/desktop/test
-h 主機名和埠號
-d 將資料恢復到的資料庫中 資料庫名不必和元資料庫名一樣
-dir 資料報所在的磁碟位置 //我使用的mongodb版本是3.2.8 看教程的時候說指定 資料報目錄是 –directoryperdb 可能是老版本的寫法
對資料集或者資料進行備份和恢復
使用mongoexport對資料進行備份:
>mongoexport -h localhost --port 27017
-d test -c user --
type json -o c:\users\pcdalao\desktop\dump\user.json -q }
過濾出3條記錄:
引數描述:
-d 資料庫
-c 資料集
– type 指定到處的檔案格式 預設是json格式,可選json或者csv
-o 到處檔案存放的位置
-q 過濾資料
-f 指定到處的字段 欄位間用都到隔開 如 -f name,age,gender
下面把整個資料集到處為csv格式:
mongoexport -h localhost --port 27017
-d test -c user --
type csv -o c:\users\pcdalao\desktop\dump\user.csv -f _id,name,age,son,gender,geo
注意:到處為csv檔案格式,必須指定到處的字段 如: -f _id,name,age,son,gender,geo
匯出整個集合中總共11條資料
使用mongoexport對匯入資料:
將第一次到處的user.json匯入資料集test.user中:
其中引數:
-d 資料庫
-c 資料集
–type 檔案格式
–drop 加上該引數表示匯入之前清空資料集
–file 指定將要匯入的檔案
–headerline 使用csv檔案的第一行作為欄位名
–ignoreblanks 由於csv是二維表,會存在空欄位,ignoreblanks指定忽略空欄位,匯入時如果欄位為空的話,就不給該文件建立空值的字段
匯入csv格式的檔案:
c:\users>mongoimport
-dtest
-cuser
--type
csv--drop
--file
c:\users\pcdalao\desktop\dump\user
.csv
--headerline
2016-08-17t16
:02:12
.721+0800 connected
to: localhost
2016-08-17t16
:02:12
.729+0800 dropping: test
.user
2016-08-17t16
:02:12
.814+0800 imported 11 documents
由於沒有忽略空欄位,所以插入了許多空值的字段。
可以看到,通過csv檔案匯入的資料中,把資料和物件當作字串來處理,失去了json的結構。
所以 如果匯出的資料是備份用,將來還可能匯入資料庫的話,最好匯出為json格式
如果匯出的資料是為了可讀性,不考慮再次匯入資料,可以匯出為csv格式。
還可以用bsondump對資料進行備份。
Mongodb資料備份恢復
一 mongodb資料庫匯入匯出操作 1 匯出資料庫 twangback為備份的資料夾 命令 mongodump h 127.0.0.1 伺服器ip d adview 資料庫名 o d mongodbdata wangback 自己定義備份儲存資料夾 例如 mongodump h 127.0.0.1...
MongoDB備份和恢復
mongodump h dbhost d dbname o dbdirectory d 需要備份的資料庫名稱 o 備份的資料存放位置,此目錄中存放著備份出來的資料 例1sudo mkdir test1bak sudo mongodump h 192.168.196.128 27017 d test1...
mongodb的資料恢復和備份方式
1 恢復 mongodb表 linux系統,恢復 mongo db表的資料 解釋 mongorestore d 資料庫名稱 匯出路徑 資料庫名 記住後面要加資料庫的名字 例子 mongorestore d monitor center c data 000b 7f15 lvm mongodb dum...