MongoDB 教程
在Mongodb中我們使用mongodump命令來備份MongoDB數(shù)據(jù)。該命令可以導(dǎo)出所有數(shù)據(jù)到指定目錄中。
mongodump命令可以通過參數(shù)指定導(dǎo)出的數(shù)據(jù)量級(jí)轉(zhuǎn)存的服務(wù)器。
mongodump命令腳本語法如下:
>mongodump -h dbhost -d dbname -o dbdirectory
MongDB所在服務(wù)器地址,例如:127.0.0.1,當(dāng)然也可以指定端口號(hào):127.0.0.1:27017
需要備份的數(shù)據(jù)庫實(shí)例,例如:test
備份的數(shù)據(jù)存放位置,例如:c:datadump,當(dāng)然該目錄需要提前建立,在備份完成后,系統(tǒng)自動(dòng)在dump目錄下建立一個(gè)test目錄,這個(gè)目錄里面存放該數(shù)據(jù)庫實(shí)例的備份數(shù)據(jù)。
在本地使用 27017 啟動(dòng)你的mongod服務(wù)。打開命令提示符窗口,進(jìn)入MongoDB安裝目錄的bin目錄輸入命令mongodump:
>mongodump
執(zhí)行以上命令后,客戶端會(huì)連接到ip為 127.0.0.1 端口號(hào)為 27017 的MongoDB服務(wù)上,并備份所有數(shù)據(jù)到 bin/dump/ 目錄中。命令輸出結(jié)果如下:
mongodump 命令可選參數(shù)列表如下所示:
語法 | 描述 | 實(shí)例 |
---|---|---|
mongodump --host HOST_NAME --port PORT_NUMBER | 該命令將備份所有MongoDB數(shù)據(jù) | mongodump --host json.cn --port 27017 |
mongodump --dbpath DB_PATH --out BACKUP_DIRECTORY | mongodump --dbpath /data/db/ --out /data/backup/ | |
mongodump --collection COLLECTION --db DB_NAME | 該命令將備份指定數(shù)據(jù)庫的集合。 | mongodump --collection mycol --db test |
mongodb使用 mongorestore 命令來恢復(fù)備份的數(shù)據(jù)。
mongorestore命令腳本語法如下:
>mongorestore -h <hostname><:port> -d dbname <path>
MongoDB所在服務(wù)器地址,默認(rèn)為: localhost:27017
需要恢復(fù)的數(shù)據(jù)庫實(shí)例,例如:test,當(dāng)然這個(gè)名稱也可以和備份時(shí)候的不一樣,比如test2
恢復(fù)的時(shí)候,先刪除當(dāng)前數(shù)據(jù),然后恢復(fù)備份的數(shù)據(jù)。就是說,恢復(fù)后,備份后添加修改的數(shù)據(jù)都會(huì)被刪除,慎用哦!
mongorestore 最后的一個(gè)參數(shù),設(shè)置備份數(shù)據(jù)所在位置,例如:c:datadumptest。
你不能同時(shí)指定 <path> 和 --dir 選項(xiàng),--dir也可以設(shè)置備份目錄。
指定備份的目錄
你不能同時(shí)指定 <path> 和 --dir 選項(xiàng)。
接下來我們執(zhí)行以下命令:
>mongorestore
執(zhí)行以上命令輸出結(jié)果如下: