删除region

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】
【附件:截图/日志/监控】
select * from INFORMATION_SCHEMA.TIKV_REGION_STATUS trs 查询发现有一个region 对应的table_id 、db_id 为null


想问下这种为null 的情况是在什么情况下形成的,还有如果我想把这个对应的region 删除掉应该如何操作

region 不用删除的,如果有 空 region,系统会自动合并或者清理

我查询了下当前这个region 的 大小是35M ,但是参数设置的是20,我是不是应该修改下参数?
image

之前是不是有过大量的删除数据啊,产生了很多小region,系统v3.0后会自动 Region Merge 的

region 的参数没有特殊需求,就别调了…
一般给出的默认参数都是通过很多次测试,得到的结果,能适应大多数场景

那你可以改了大于35M,等合并了,再改回20M默认的 :grinning:


但是看监控面板又没有显示有空region

我试试看是否有效,如果有效果的话应该是查询select * from INFORMATION_SCHEMA.TIKV_REGION_STATUS trs这条语句的时候没有显示为null 的值吧?

看监控显示没有空region ,感觉挺奇怪的

那就是正常的,region 的区间 是以 Key_start 和 Key_end 来做分割的,如果没值,则代表无限小,或者无限大。
这样就可以允许放下分割之外的区间数据了



改完了,查询确实没有这个region了

1 个赞

我这个region 就是没有start_key

说白了,就是,超级小,说他没有吧,里面还有一丢丢,哈哈。合并了之后,记得改回20M,就好

确实是,说没有还有一点,说有还不多,已经修改回去了

同样遇到了,感谢大佬们

根据 region 的 ID,使用 tikv-ctl pd destroy-region {region_id} 命令来销毁对应的 region

你这是哪看的命令?