TiDB插入数据后,能否修改SHARD_ROW_ID_BITS参数的取值?
TiDB中SHARD_ROW_ID_BITS参数的调整问题
能否增大参数值?
可以增大SHARD_ROW_ID_BITS的值。当你需要进一步分片时,调高该参数后,新写入的行数据会按照新的分片规则分配到更多TiKV Region中,实现更细粒度的数据分散。需要注意的是,已存在的历史数据不会重新分片,仍保留在原分片中,只有新增数据会应用新规则。比如原本设为4(对应16个分片),改成5后,新数据会分散到32个分片里。
能否减小参数值?
不支持减小SHARD_ROW_ID_BITS的值。TiDB禁止将该参数调小,因为这会破坏原有分片规则,引发数据分布冲突,进而导致Region重叠、数据读写异常等问题,严重影响集群稳定性和数据正确性。如果确实需要减少分片数量,不能直接修改该参数,只能通过重新建表并迁移数据这类方式实现。
内容的提问来源于stack exchange,提问作者Tetsuya3850
相关产品推荐
相关产品推荐

