【PG常用命令】postgresql数据库统计对象大小
时间: 2023-08-04 08:03:25 浏览: 144
要统计 PostgreSQL 数据库中所有对象的大小,可以使用以下命令:
```sql
SELECT nspname || '.' || relname AS "relation",
pg_size_pretty(pg_total_relation_size(C.oid)) AS "total_size"
FROM pg_class C
LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
WHERE nspname NOT IN ('pg_catalog', 'information_schema')
AND C.relkind <> 'i'
AND nspname !~ '^pg_toast'
ORDER BY pg_total_relation_size(C.oid) DESC
LIMIT 20;
```
该命令将返回数据库中前20个对象的大小,按从大到小的顺序排列。其中,`pg_total_relation_size` 函数用于计算表和索引的大小,`pg_size_pretty` 函数用于将字节转换为易读的格式(如 MB、GB 等)。
阅读全文