全部产品
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 钉钉智能硬件

如何查看表和数据库的数据量大小?

更新时间:2017-12-12 10:01:19

假设表的模式为<schemaname>,表名为<tablename>

  • 执行以下命令,查询一张表的总大小(单位为MB,包含表的索引和数据):

    1. select pg_size_pretty(pg_total_relation_size('<schemaname>.<tablename>'));
  • 执行以下命令,查询表的数据大小(单位MB,不包括索引):

    1. select pg_size_pretty(pg_relation_size('<schemaname>.<tablename>'));
  • 执行以下命令,查询分区表所有分区的总大小(单位MB,包含表的索引和数据):

    1. select schemaname,tablename,round(sum(pg_total_relation_size(schemaname || '.' || partitiontablename))/1024/1024) "MB" from pg_partitions where schemaname='<schemaname>' and tablename='<tablename>' group by 1,2;
  • 执行以下命令,查询一个Schema下面的所有表的总大小(单位MB,包括索引和数据):

    1. select schemaname ,round(sum(pg_total_relation_size(schemaname||'.'||tablename))/1024/1024) "Size_MB" from pg_tables where schemaname='<schemaname>' group by 1;
  • 执行以下命令,查询每个数据库的大小(单位MB):

    1. select datname,pg_size_pretty(pg_database_size(datname)) from pg_database;
本文导读目录