TDengine中修改vgroup副本数的方法及操作注意事项
操作前提
- 仅TDengine 3.0及以上版本支持单独调整存量vgroup的副本数,2.x版本仅支持修改数据库配置后新生成的vgroup使用新副本数,存量vgroup无法单独调整,需先升级集群版本再操作
- 调整前集群在线可用dnode数量必须≥目标副本数3,且目标vgroup没有处于offline状态的副本,可执行
show vgroups;查询目标vgroup的vgId和当前状态
具体操作步骤
- 执行命令调整指定vgroup副本数,替换尖括号内的vgId为你查询到的实际ID:
alter vgroup <vgId> replica 3; - 调整完成后执行
show vgroup <vgId>;确认返回结果中的replica字段变为3,且所有副本的status字段均为online即可
调整注意事项
- 调整属于异步操作,集群会自动选择空闲dnode创建新副本并全量同步该vgroup的历史时序数据,同步完成前不要重启相关dnode、不要执行集群缩容、不要删除该vgroup关联的数据库/表
- 数据同步阶段会占用一定的网络带宽和磁盘IO资源,务必选择业务低峰期执行操作,避免对线上正常写入、查询请求造成性能影响
- 不要同时对多个vgroup执行副本数调整操作,避免IO压力过高导致集群响应变慢甚至节点离线,需等单个vgroup调整完成且状态稳定后再操作下一个
- 若调整过程中出现副本状态异常,不要手动删除节点上的vgroup数据文件,优先通过
show dnodes;、show vgroups;命令排查节点和vgroup状态,再做进一步处理
内容的提问来源于stack exchange,提问作者lsm
相关产品推荐
相关产品推荐

