查Postgresql 数据库、各表占用磁盘大小

来源:互联网 发布:地方债务数据 2016 编辑:程序博客网 时间:2024/05/22 03:19

统计各数据库占用磁盘大小:

[sql] view plain copy
  1. SELECT d.datname AS Name,  pg_catalog.pg_get_userbyid(d.datdba) AS Owner,  
  2.    CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT')  
  3.        THEN pg_catalog.pg_size_pretty(pg_catalog.pg_database_size(d.datname))  
  4.        ELSE 'No Access'  
  5.    END AS SIZE  
  6. ROM pg_catalog.pg_database d  
  7.    ORDER BY  
  8.    CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT')  
  9.        THEN pg_catalog.pg_database_size(d.datname)  
  10.        ELSE NULL  
  11.    END DESC -- nulls first  
  12.    LIMIT 20  

统计数据库中各表占用磁盘大小:

[sql] view plain copy
  1. SELECT  
  2.     table_schema || '.' || table_name AS table_full_name,  
  3.     pg_size_pretty(pg_total_relation_size('"' || table_schema || '"."' || table_name || '"')) AS size  
  4. FROM information_schema.tables  
  5. ORDER BY  
  6.     pg_total_relation_size('"' || table_schema || '"."' || table_name || '"'DESC  
  7.    
阅读全文
0 0
原创粉丝点击