Mongodb數(shù)據(jù)庫的備份與恢復(fù)操作實(shí)例
寫在前面
本文已經(jīng)假設(shè)你已經(jīng)安裝好了Mongodb(2.6),并且已經(jīng)開啟了auth。
用戶
首先我們添加備份和恢復(fù)數(shù)據(jù)所需的用戶,這個用戶需要有readWrite和userAdmin權(quán)限
$ mongo
$ use admin
$ db.auth("admin", "youradminpasswd");
$ use backupdb
$ db.addUser({ user: "backup", pwd: "passwd", roles: [ "readWrite", "userAdmin" ] })
備份
注:此命令是在控制臺中執(zhí)行
我們使用mongodump來進(jìn)行數(shù)據(jù)的備份(注意:mongodump不會備份local數(shù)據(jù)庫中內(nèi)容)。
mongodump可以通過以下兩種方式來進(jìn)行數(shù)據(jù)的備份:
連接到mongod或者mongos
直接訪問數(shù)據(jù)文件
這個工具可以備份整個服務(wù)器、單個database或者單個collection的數(shù)據(jù),也可以通過查詢語句只備份collection中的部分?jǐn)?shù)據(jù)。
如果不帶任何參數(shù)直接執(zhí)行mongodump,那么它會去連接本地(127.0.0.1或者localhost)27017端口上的MongoDB實(shí)例,并且會創(chuàng)建名為dump的備份。
$ mongodump --host mongodb.example.net --port 27017 --db test --collection some --username backup --password passwd
以上會使mongodump連接到mongodb.example.net:27017上的mongod,并且把dbtest中的somecollection備份到dump目錄下
注意:從Mongodb2.2版本開始,mongodump使用的數(shù)據(jù)格式與舊版本的mongod實(shí)例不兼容。所以不要使用新版本(>=2.2)的mongodump去備份舊數(shù)據(jù)。
恢復(fù)
使用mongodump備份的數(shù)據(jù),需要使用mongorestore來恢復(fù)。
mongorestore恢復(fù)數(shù)據(jù)的方式與mongodump相對應(yīng),也是分為兩種:
連接到mongod或者mongos
直接寫入到數(shù)據(jù)文件
mongorestore既可以恢復(fù)整個備份也可以恢復(fù)一部分。
$ mongorestore --host mongodb.example.net --port 27017 --db test --collection some --username backup --password password /data/backup
以上會從/data/backup中恢復(fù)數(shù)據(jù),其中只恢復(fù)testdb中somecollection到mongodb.example.net:27017中。如果不指定--host和--portoption,那么mongorestore會默認(rèn)使用localhost:27017。
注:在還原時必需在將要還原的數(shù)據(jù)庫上新建將要還原的數(shù)據(jù)與所屬的用戶 --drop的意思是刪除庫中原來的數(shù)據(jù)庫并將數(shù)據(jù)庫還原上去
此命令是在控制臺中執(zhí)行
- MongoDB的備份與恢復(fù)
- mongoDB4.2.8備份恢復(fù)與導(dǎo)出導(dǎo)入(推薦)
- 分布式文檔存儲數(shù)據(jù)庫之MongoDB備份與恢復(fù)的實(shí)踐詳解
- 使用centos系統(tǒng)中的crontab命令對mongodb定時備份恢復(fù)
- Mongodb實(shí)現(xiàn)定時備份與恢復(fù)的方法教程
- MongoDB 導(dǎo)出導(dǎo)入備份恢復(fù)數(shù)據(jù)詳解及實(shí)例
- MongoDB使用自帶的命令行工具進(jìn)行備份和恢復(fù)的教程
- Windows或Linux系統(tǒng)中備份和恢復(fù)MongoDB數(shù)據(jù)的教程
- MongoDB整庫備份與還原以及單個collection備份、恢復(fù)方法
- MongoDB的備份(mongodump)與恢復(fù)(mongorestore)
相關(guān)文章
MongoDB教程之?dāng)?shù)據(jù)操作實(shí)例
這篇文章主要介紹了MongoDB教程之?dāng)?shù)據(jù)操作實(shí)例,本文講解了批量插入、數(shù)據(jù)庫清除、數(shù)據(jù)更新、修改器、數(shù)組修改器、upsert等內(nèi)容,需要的朋友可以參考下2015-05-05MongoDB 中聚合統(tǒng)計計算--$SUM表達(dá)式
這篇文章主要介紹了MongoDB 中聚合統(tǒng)計計算--$SUM表達(dá)式的相關(guān)知識,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-08-08大數(shù)據(jù)環(huán)境下mongoDB為何要加索引淺析
這篇文章主要給大家介紹了關(guān)于大數(shù)據(jù)環(huán)境下mongoDB為何要加索引的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用mongoDB具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05mongodb replica set 配置高性能多服務(wù)器詳解
mongodb的多服務(wù)器配置,以前寫過一篇文章,是master-slave模式的,master-slave模式,不能自動實(shí)現(xiàn)故障轉(zhuǎn)移和恢復(fù)。所以推薦大家使用mongodb的replica set,來實(shí)現(xiàn)多服務(wù)器的高性能。2014-07-07mongodb數(shù)據(jù)庫的6個安全設(shè)置命令
這篇文章主要介紹了mongodb數(shù)據(jù)庫的6個安全設(shè)置命令,如安全模式啟動、安全認(rèn)證、數(shù)據(jù)讀寫加鎖、解鎖等,需要的朋友可以參考下2014-05-05mongodb數(shù)據(jù)庫入門學(xué)習(xí)筆記之下載、安裝、啟動、連接操作解析
這篇文章主要介紹了mongodb數(shù)據(jù)庫入門學(xué)習(xí)筆記之下載、安裝、啟動、連接操作,結(jié)合簡單示例形式分析了MongoDB數(shù)據(jù)庫的基本下載、解壓、啟動服務(wù)、連接服務(wù)等相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2019-10-10MongoDB的Master-Slave主從模式配置及主從復(fù)制要點(diǎn)解析
主從復(fù)制是數(shù)據(jù)庫運(yùn)維中一種常見的備份方式,這里我們來看一下MongoDB的Master-Slave主從模式配置及主從復(fù)制要點(diǎn)解析,需要的朋友可以參考下2016-06-06MongoDB系列教程(七):MongoDb數(shù)據(jù)結(jié)構(gòu)詳解
這篇文章主要介紹了MongoDB系列教程(七):MongoDb數(shù)據(jù)結(jié)構(gòu)詳解,本文講解了Collections、Document、GridFS等3種數(shù)據(jù)結(jié)構(gòu),需要的朋友可以參考下2015-05-05MongoDB??數(shù)據(jù)模型的設(shè)計模式及優(yōu)缺點(diǎn)
這篇文章主要介紹了MongoDB??數(shù)據(jù)模型的設(shè)計模式,在實(shí)際開發(fā)中,大多數(shù)性能問題都可以追溯到糟糕的模型設(shè)計,官方也提供分享過文檔模型設(shè)計的進(jìn)階技巧,這里簡單翻譯記錄一下,需要的朋友可以參考下2022-12-12