综合讨论区~一起来唠嗑
技术年货
文章
精选
数据库春节技术年货 | 系统中查看表中数据量
发表于2026-02-26 13:38:2447次浏览3个评论
你有没有过这种情况:对表tab1一次性插入10000行数据后,通过systables表中的nrows查看依然行数为0。
如何查看tab1真实的数据量?
如果tab1是分片表,又该如何查看每个分片中各有多少数据量?
systables系统表中存放的只是统计数据,需要执行update statistics(统计更新)后才能显示真实行数。可以通过以下方法查看真实行数:
如果是非分片表,可以通过systables中的partnum与sysmaster库sysptnhdr表中的partnum做连接。Sysptnhdr表中的nrows是实时的真实行数,npdata是真实的数据使用的页数量;
select t.tabname,t.partnum,t.nrows,p.nrows,p.npdata
from stores_demo@gbaseserver:systables t, sysmaster@gbaseserver:sysptnhdr p
where t.partnum=p.partnum and t.tabname="customer";如果是分片表,可以通过sysfragments中的partn与sysmaster库sysptnhdr表中的partnum做连接;
- 可以通过oncheck -pt dbname:tab1查看各个分片(或非分片)表的行数,页使用情况。
评论
登录后才可以发表评论
热门帖子
- 12025-12-01浏览数:182037
- 22023-05-09浏览数:24258
- 42023-09-25浏览数:17460
- 52020-05-11浏览数:16488