当系统的数据量增长不是太快的时候,考虑到数据迁移会降低系统性能,可以配置均衡器在只在特定时间段运行。
详细的配置步骤如下;
- 连接到任意的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 } })
-
本文介绍了如何在MongoDB中配置均衡器仅在特定时间段运行的方法。包括连接到mongos服务器、启动均衡器及设置时间窗口的具体步骤。还提供了如何删除时间窗口配置的命令。
3166

被折叠的 条评论
为什么被折叠?



