#添加分片
db.runCommand( {addshard : "shardWlinkRep1/127.0.0.1:37017,127.0.0.1:37017,127.0.0.1:37017",name:"shard1"} )
#删除分片
db.runCommand( { removeShard : "shard2"} )
(1)如果balance开始,查看是否正在有数据迁移sh.isBalancerRunning();
(2)开启Balancer(开启Balancer之后,chunks会自动均分)sh.startBalancer();
(3)停止balancesh.stopBalancer();
(4)关闭某个集合的balancesh.disableBalancing("users.name");
(5)打开某个集合的balancesh.enableBalancing("users.name");
(6)确定某个集合的balance是开启或者关闭db.getSiblingDB("config").collections.findOne({_id : "test.doc2"})。noBalance;
(7)设置Balancer进程运行时间窗口默认情况下Balancing进程在运行时为降低Balancing进程对系统的影响,可以设置Balancer进程的运行时间窗口,让Balancer进程在指定时间窗口操作#设置时间窗口
db.settings.update({ _id : “balancer” }, { $set : {activeWindow : { start : “23:00”, stop : “6:00” } } }, true )(8)查看Balancer运行时间窗口db.settings.find();sh.getBalancerWindow();
(9)删除Balancer进程运行时间窗口db.settings.update({ _id : "balancer" }, { $unset : { activeWindow : 1}});db.settings.find();