用途:分析 CockroachDB 表与索引的 range 分布、leaseholder 放置及 zone 配置合规性,全部通过 SQL 完成,无需 DB Console。
主要能力:识别 range 数量异常(碎片化)、range 大小不均、leaseholder 集中导致读热点、副本不足或不可用、以及高写入导致的 range 分裂模式;可审计 zone 配置与实际放置是否一致。
使用方式:需 SQL 连接集群,并具备 admin 角色或 ZONECONFIG 系统权限(可用 SHOW SYSTEM GRANTS FOR <username>; 检查)。核心查询包括:按表统计 range 数量、定向使用 WITH DETAILS 分析 range 大小、统计 leaseholder 分布、检查副本健康、执行 SHOW ZONE CONFIGURATIONS 审计配置、计算每 GB range 数评估碎片化。
适用场景:热点排查、多区域 zone 配置验证、碎片化诊断、schema 变更前的存储规划(可配合 analyzing-schema-change-storage-risk)。
限制与安全:WITH DETAILS 会按需计算 span_stats,CPU 与内存开销大,必须配合 LIMIT 并限定具体表,禁止全库扫描;基础 SHOW RANGES 与 SHOW ZONE CONFIGURATIONS 为元数据操作,生产安全。默认 range_max_bytes 为 512MB,副本默认 3。所有查询为只读。权限不足、超时、副本不足等问题需按资料中的排查表处理。节点到区域的映射可用 SHOW REGIONS 或 cockroach node status --certs-dir=<certs-dir> --host=<any-live-node>。