psql 查询所有表的大小
时间: 2023-05-19 19:04:17 浏览: 88
您可以使用以下命令查询所有表的大小:
SELECT table_name, pg_size_pretty(pg_total_relation_size('"' || table_name || '"')) AS size
FROM information_schema.tables
WHERE table_schema = 'public'
ORDER BY pg_total_relation_size('"' || table_name || '"') DESC;
相关问题
psql查询数据表大小
您可以使用以下命令查询数据表大小:
```
SELECT pg_size_pretty(pg_total_relation_size('table_name'));
```
其中,'table_name' 是您要查询的数据表的名称。这个命令将返回一个易于阅读的格式,显示数据表的总大小。
psql查询数据库使用率sql
在 PostgreSQL (psql) 中,没有直接内置的 SQL 查询来获取数据库的使用率。数据库的使用情况通常包括活跃连接数、磁盘空间使用、表的大小、索引的状态等,这些都是需要通过系统视图或特定统计信息来监控。
以下是一些可能的间接方法来估算数据库的使用情况:
1. **活跃连接数**:
- `SELECT * FROM pg_stat_activity` 可以查看当前的所有活动连接,包括用户、进程ID、状态等。
2. **内存使用**:
- `SELECT pg_stat_database.datname, round(pgstattuple(relfilenode), 2) AS tuples_visible, round(pg_database_size(datname) / 1024 / 1024, 2) AS data_size MB, round((pg_database_size(datname) - pg_relation_size(relname)) / 1024 / 1024, 2) AS unused_space MB FROM pg_stat_database JOIN pg_statio_user_tables ON pg_stat_database.datname = pg_statio_user_tables.relname WHERE datname = 'your_database_name';`
这将显示每个数据库的可见行数(tuples_visible)和磁盘空间使用情况。
3. **磁盘空间使用**:
- `VACUUM FULL` 后查看 `pg_database_size()` 变化,可以得到近似的磁盘空间使用量。
请注意,以上信息需要结合业务情况进行分析,才能得出数据库的使用率。真正的数据库使用率可能还需要考虑存储过程、临时表、视图等因素。如果你想要一个更全面的视图,可能需要使用专门的性能监控工具或者操作系统级别的工具。
阅读全文
相关推荐













