mongodb分片均衡器设置
mongodb分片均衡器设置
分片均衡器窗口配置
use config sh.getBalancerState() sh.getBalancerWindow() db.settings.update( { _id: "balancer" }, { $set: { activeWindow : { start : "00:01", stop : "05:59" } } }, { upsert: true } )
当系统的数据量增长不是太快的时候,考虑到数据迁移会降低系统性能,可以配置均衡器在只在特定时间段运行。
详细的配置步骤如下;
连接到任意的mongos服务器,并通过安全认证(如果有认证的话)。
切换到config数据库:
use config
启动均衡器:
sh.setBalancerState( true )
配置时间窗口:
db.settings.update(
{ _id: "balancer" },
{ $set: { activeWindow : { start : "<start-time>", stop : "<stop-time>" } } }, { upsert: true } )
<start-time> 和 <end-time>的格式是"HH:MM",其中"HH"(小时)的取值范围是"00 - 23","MM"(分钟)的取值范围是"00 - 59"。
注意事项
当设置了均衡器运行窗口后,就不能执行sh.startBalancer()了,因为虽然会返回成功,但其实并没有开始,如下:
mongos> sh.startBalancer()
{ "ok" : 1 }
如果需要删除时间窗口,执行如下命令:
use config db.settings.update({ _id : "balancer" }, { $unset : { activeWindow : true } })
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下