- 文档首页
文档数据库 MongoDB 版
常见问题
实例变配
实例变配
本文汇总了文档数据库 MongoDB 版实例变配的常见问题。
文档数据库 MongoDB 版是否支持添加或减少节点或分片?
文档数据库 MongoDB 版支持两种实例类型,不同类型的 MongoDB 实例支持的变配方案不同。更多关于 MongoDB 实例支持的变配方案详情,请参见变更实例配置。 在变更实例配置的预检查阶段出现了报错,该如何处理?
在执行变更实例配置操作前,文档数据库 MongoDB 版会预先对实例健康状态进行检查,确保实例各项健康监控指标符合变配要求,以降低因配置变更导致异常的可能性。 若在实例变配的预检查阶段出现了相关报错,您可以参考下表中的建议尝试解决。
为什么增加 Shard 分片时,实例会出现性能抖动(如业务访问延迟增加)?
当您通过扩容操作为实例增加 Shard 分片后,出于数据自动均衡的需要,MongoDB Balancer 会立刻启动搬迁流程。在搬迁完成后,原分片上的数据将会被删除。需要注意的是,MongoDB 在默认设置下,并未对数据迁移的数据量以及间隔时间加以限制。所以,从开启分片直至数据完全实现均衡的这一时间段内,如果您的 MongoDB 实例中已存在大量数据,primary shard 极有可能出现负载增加的情况。在这种情形下,时延敏感业务很可能会有明显感知,例如出现 CPU 使用率异常攀升、业务访问延迟加剧、页面响应速度变慢等状况。 若在为 MongoDB 实例增加 Shard 分片过程中出现上述问题,您可尝试通过修改以下 2 个参数来限制实例的数据迁移与清理速度。
说明
- 通过调整下述参数,可在短期内减轻因负载均衡引起的性能抖动问题。然而,这也将导致新分片完成数据均衡的时间显著延长,需结合业务实际场景进行综合权衡。
- 强烈建议您密切留意 MongoDB 实例的表数据量,并提前为实例启用分片功能。同时,为防止对线上业务造成影响,建议在业务低谷时段执行扩容分片操作。关于分片集群使用的更多建议,请参见 MongoDB 分片集群使用指南。
- 建议对需要分片的集合提前在分片键上创建索引,并优先选择取值多样、写入均衡、贴合查询的字段作为分片键,以保障数据均匀分布和查询效率。
- 升配前,建议您提交工单联系技术支持,提供目标规格信息,由技术团队评估本次变配是否会触发数据迁移,并确认预计变配时长及可能产生的影响。
若通过调整上述参数后,性能抖动问题仍未缓解,或出现写入失败,请按以下步骤止损:
- 返回结果为 false(或返回结果中的 inBalancerRound 为 false),表示 Balancer 当前未在运行,可继续执行下一步。
- 返回结果为 true(或返回结果中的 inBalancerRound 为 true),表示 Balancer 当前正在执行数据迁移,此时切勿强制停止,请稍后重试。
- 确认 Balancer 未在运行后,执行以下命令。
说明
- 问题解决后如需重新开启 Balancer,可执行 sh.setBalancerState(true) 命令恢复数据自动均衡。
- 提交工单联系技术支持介入排查。此时实例的现场状态、监控数据和日志信息最完整,有助于快速定位根因。
最近更新时间:2026.06.26 14:09:17