tidb 好像没有方法,可以看一个表的副本在哪个具体的tiflash上吧,只能查到这个表有没有tiflash副本这些信息什么的
可以通过一些表的关联查询
information_schema.tiflash_replica
tikv_region_status、tikv_region_peers、tikv_store_status
也可以通过pd-ctl命令查询
以及show table regions命令
好像看不到具体在哪个节点上
确实没有直接的单条 SQL 可以直接返回 “表副本所在的 TiFlash 节点 IP”
有系统字典可以查看
SELECT
tr.TABLE_SCHEMA,
tr.TABLE_NAME,
tr.REPLICA_COUNT,
tr.AVAILABLE,
tr.PROGRESS,
p.STORE_ID,
s.ADDRESS AS TIFLASH_ADDRESS,
COUNT(DISTINCT r.REGION_ID) AS REGION_COUNT
FROM INFORMATION_SCHEMA.TIFLASH_REPLICA tr
JOIN INFORMATION_SCHEMA.TIKV_REGION_STATUS r
ON r.DB_NAME = tr.TABLE_SCHEMA
AND r.TABLE_NAME = tr.TABLE_NAME
JOIN INFORMATION_SCHEMA.TIKV_REGION_PEERS p
ON p.REGION_ID = r.REGION_ID
JOIN INFORMATION_SCHEMA.TIKV_STORE_STATUS s
ON s.STORE_ID = p.STORE_ID
WHERE tr.REPLICA_COUNT > 0
AND p.IS_LEARNER = 1
GROUP BY
tr.TABLE_SCHEMA,
tr.TABLE_NAME,
tr.REPLICA_COUNT,
tr.AVAILABLE,
tr.PROGRESS,
p.STORE_ID,
s.ADDRESS
ORDER BY
tr.TABLE_SCHEMA,
tr.TABLE_NAME,
REGION_COUNT DESC;