mongodb撤銷集合分片

mongodb撤銷集合分片

2019年08月16日 16:39:41 WFkwYu 閱讀數 31更多linux

分類專欄: 運維 mongodb 數據庫 linuxmongodb

版權聲明:本文爲博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處連接和本聲明。數據庫

本文連接:https://blog.csdn.net/qq_35663625/article/details/99680876運維

mongodb撤銷集合分片

基本步驟:

  1. 中止全部有關和mongodb鏈接的應用程序
  2. 導出須要撤銷的集合數據
  3. 禁用分片的自動平衡
  4. 刪除該集合
  5. 導入集合數據
  6. 開啓分片的自動平衡

一、中止全部有關和mongodb鏈接的應用程序(根據實際狀況而定,此步忽略)spa

二、導出須要撤銷的集合數據.net

$ ./bin/mongodump -h 127.0.0.1:30000 -u mongodb_backup_user -p mongodb_backup_passwd  -d dbname  -c collection  -o  /data/backup/mongod_bak/20190624-collection/

/data/mongodb/bin/mongodump -h 127.0.0.1:27017 -u myleguan -p myleguan2018  -d myleguan  -c dy_challenge  -o  /data/mongod_bak/dy_challenge/rest

三、禁用分片的自動平衡code

> use config
> db.settings.update( { _id: "balancer" }, { $set : { stopped: true } } , true );
> db.printShardingStatus()
  • 1
  • 2
  • 3

四、刪除集合blog

> use admin
> sh.status();
> use nswcms
> show collections;
> db.表名.drop();              -----db.collection.drop();
> show collections;
> sh.status();
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

五、導入集合get

$ ./bin/mongorestore -h 127.0.0.1:30000 -u mongodb_restore_user -p mongodb_restore_passwd  -d dbname /data/backup/mongod_bak/20190624-collection/collection

/data/mongodb/bin/mongorestore -h 127.0.0.1:27017 -u myleguan -p myleguan2018 -d myleguan -c dy_challenge_bak /data/mongod_bak/dy_challenge/myleguan/dy_challenge.bson --authenticationDatabase myleguan

執行 db.printShardingStatus() ,查看分片概要

六、開啓分片的自動平衡

> use admin
> sh.setBalancerState(true)
> sh.status()
  • 1
  • 2
  • 3

好了,這就是mongodb撤銷集合分片的方法了,若有問題可與博主一塊兒交流討論!

相關文章
相關標籤/搜索