共計 1482 個字符,預計需要花費 4 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
這篇文章給大家介紹 mongodb 中有哪些備份恢復命令,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
備份:
mongodump -uroot -ppassword –port=27017 –authenticationDatabase=admin -h hostname -d databasename -o /data/backup/mongodump/
-h:MongDB 所在服務器地址,例如:127.0.0.1,當然也可以指定端口號:127.0.0.1:27017
-d:需要備份的數據庫實例,例如:database_name
-o:備份的數據存放位置
mongo 整庫恢復
$ mongorestore -h host -d database_name –directoryperdb /mg_data/backup/mongodump/database_name
單 collection 備份
mongos mongoexport -h dbhost -d dbname -c collectionname -f collectionKey -o dbdirectory
-h: MongoDB 所在服務器地址
-d: 需要恢復的數據庫實例
-c: 需要恢復的集合
-f: 需要導出的字段 (省略為所有字段)
-o: 表示導出的文件名
單 collection 恢復
mongos mongoimport -d dbhost -c collectionname –type csv –headerline –file
-type: 指明要導入的文件格式
-headerline: 批明不導入第一行,因為第一行是列名
-file: 指明要導入的文件路徑
同時,需要給這個庫做個物理備份,一般是做個快照
lvcreate -L10G -s -n data_snapshot /dev/vg01/lv01
項目組搞完后,然后 remove 這個快照,就 ok 了
# lvremove /dev/vg01/data_snapshot
如果需要恢復,步驟如下
mkdir /snapshort
mount /dev/datavg01/vg01 /snapshort/
將 mongodb 停掉,cp 快照的備份文件到 mongo 對應數據目錄
起 mongo,即可
##########mongodb 批量插入數據演練測試 ##########
for (var i=0;i 300000;i++){db.jack.insert({ i :10000000+i, username : user10000000 +i, age :9999+i})}
db.runCommand({shardcollection : test.jack , key :{ _id :1}})
for (var i=0;i 200000;i++){db.nycnew.insert({ i :10000000+i, username : user10000000 +i, age :9999+i})}
for (var i=0;i i++){db.test1.insert({ name : t+i , dep : abcdef , num :i+8})} 對集合批量插入數據
db.test1.remove({name : t+10},{jusOne: true})
db.test1.remove({num :25},{jusOne: true}) – 刪除 num 為 3 的文檔
db.test1.find({dep : abcdefg})
關于 mongodb 中有哪些備份恢復命令就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
向 AI 問一下細節