MongoDB 副本集管理与操作指南
1. buildIndexes 选项
buildIndexes
选项适用于副本集成员使用非生产标准硬件,且维护索引成本过高的情况。可以为不执行查询的成员设置该选项。需要注意的是,设置此选项后,该成员无法成为主节点,其优先级会被强制设为 0。
2. 主节点降级操作
2.1 操作背景
在工作时间进行维护活动时,若要对副本集中的服务器进行维护,可将其从副本集中移除,维护完成后再放回。若该服务器是主节点,则需先将其降级,重新选举新的主节点,并确保在一定时间内该节点不会再次当选为主节点。
2.2 操作步骤
- 连接到副本集的一个成员,执行
rs.status()
查看当前主节点。 - 使用
mongo
shell 连接到主节点,执行rs.stepDown()
。 - shell 会重新连接,此时原主节点变为从节点。再次执行
rs.status()
查看新的主节点。 - 连接到新的主节点,修改副本集配置并进行服务器管理操作。
2.3 原理分析
rs.stepDown()
函数可接受一个数值参数,代表该节点在指定秒数内不参与选举且不会成为主节点,默认值为 60 秒。即使被降级的节点优先级高于其他节点,在指定时间内也不会成为主节点。但如果该节点设置了较高优先级,在指定时间过后会进行选