sh
.setBalancerState(true);保证balance是开启的,才会将被删除的分片上的数据会自动迁移到其他分片上,draining" : true, --正在迁移数据
这个命令可以重复执行以便查看迁移的状态,remaining
字段表示剩余数据块的数量
6)删除未分片的主分片
数据库未分片,该数据库就会选择一个分片作为主分片。Db.collection.stats()中"primary" :
"mg-test-shard01"显示就是主分片,删除这个主分片,需要先将集合主分片改为其他分片,然后才能删除主分片
-
db.runCommand( { movePrimary: "db_name", to: "new_shard" })
-
db.runCommand({removeshard:"mg-test-shard01/10.9.161.65:27019,10.9.33.70:27019"})