CuteRay
(Cherry🍒)
1
【 TiDB 使用环境】测试
【 TiDB 版本】v5.4.2
测试环境有一个集群,监控显示的数据量大概有3.4T,磁盘快不够,需要清理一批数据,就去查了查information_schema.table-storage-stats ,看看有哪些大表。于是就发现一个很奇怪的现象,pd的 max-replicas 配置好像失效了。
pd-ctl 查到的max-replicas 是默认的3,但是通过 information_schema.table-storage-stats 系统表去查,发现该集群中有的库表的副本数量不是最大的3,PEER_COUNT 显示的是 6,而且奇怪的是,有的库中所有表的 PEERC_COUNT 都是6,有的是 3-6 不等,有的又全都是 3。
集群并无配置 placement rules。
h5n1
(H5n1)
5
或许是这个表记录的本身就是错误 不准确的,还是show table regions 看到的结果准确
1 个赞
h5n1
(H5n1)
7
加where TABLE_SCHEMA=‘xxxx’
SELECT * FROM INFORMATION_SCHEMA.TIKV_REGION_PEERS
;
这个查region的副本,或者直接pdctl里面查才是对的吧
1 个赞
这样可以了,不过好像这个peercount确实显示不对
1 个赞
CuteRay
(Cherry🍒)
10
是的,这张表显示的信息有误,我通过 show table regions
看的是对的
有猫万事足
12
select trp.REGION_ID,count(1) from INFORMATION_SCHEMA.TIKV_REGION_PEERS trp group by trp.REGION_ID having count(1)<>3;
这个语句只要没有什么结果,应该就是正常的。
table-storage-stats这个表里面,应该是这个表peer的总数。比如你这个表有2个leader region,那peer就是6。
我有一个分区表,使用了预分裂region的参数,结果甚至是下面这样的:
每个分区是单独一行,有数据的两个分区peer_count就很大。没有但预分裂的也不小。
1 个赞
CuteRay
(Cherry🍒)
13
对的,那个SQL跑出来是empty,是正常的。
我的又跟你不一样,我的全是6。。。
不过谢大佬解惑
h5n1
(H5n1)
14
看了下我的5.2.3 , 统计的表大小等信息极不准确,同样的表单独查和 schema整个查的结果都不一样
单独查:
查schema下所有:
select * from INFORMATION_SCHEMA.table_storage_stats where table_schema=‘skyalarm’ order by 2;
system
(system)
关闭
15
此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。