018.PGSQL-pgsql查询库的大小、表的大小
库的大小
1.在postgresql数据库中默认情况下可通过pg_database_size函数加数据库名称的方式来查看数据库的大小 select pg_database_size('ioc') select pg_size_pretty(pg_database_size('ioc'))
表的大小
表的记录数 select relname as TABLE_NAME, reltuples as rowCounts from pg_class where relkind = 'r' and relnamespace = (select oid from pg_namespace where nspname='public') order by rowCounts desc; -- 查出所有表(包含索引)并排序 -- 查出所有表(包含索引)并排序 SELECT table_schema , table_name AS table_full_name, pg_size_pretty(pg_total_relation_size('"' || table_schema || '"."' || table_name || '"')) AS size FROM information_schema.tables where table_schema in ( 'ioc_dm' ,'ioc_dw','ioc_ods','ioc_standard','ioc_support','ioc_theme') ORDER BY pg_total_relation_size('"' || table_schema || '"."' || table_name || '"') DESC -- 查出所有表(包含索引)并排序 SELECT table_schema || '.' || table_name AS table_full_name, pg_size_pretty(pg_total_relation_size('"' || table_schema || '"."' || table_name || '"')) AS size FROM information_schema.tables where table_schema = 'ioc_dm' and table_name like '%index%' ORDER BY pg_total_relation_size('"' || table_schema || '"."' || table_name || '"') DESC --数据库中单个表的大小(不包含索引) select pg_size_pretty(pg_relation_size('表名')); --查出所有表(包含索引)并排序 SELECT table_schema || '.' || table_name AS table_full_name, pg_size_pretty(pg_total_relation_size('"' || table_schema || '"."' || table_name || '"')) AS size FROM information_schema.tables ORDER BY pg_total_relation_size('"' || table_schema || '"."' || table_name || '"') DESC limit 20 --查出表大小按大小排序并分离data与index SELECT table_name, pg_size_pretty(table_size) AS table_size, pg_size_pretty(indexes_size) AS indexes_size, pg_size_pretty(total_size) AS total_size FROM ( SELECT table_name, pg_table_size(table_name) AS table_size, pg_indexes_size(table_name) AS indexes_size, pg_total_relation_size(table_name) AS total_size FROM ( SELECT ('"' || table_schema || '"."' || table_name || '"') AS table_name FROM information_schema.tables ) AS all_tables ORDER BY total_size DESC ) AS pretty_sizes
元命令查看表大小、索引大小
mydb=> \dt List of relations Schema | Name | Type | Owner ----------+-----------+-------+-------- myschema | o_ls_test | table | pguser (1 row) mydb=> \dt+ o_ls_test List of relations Schema | Name | Type | Owner | Size | Description ----------+-----------+-------+--------+--------+------------- myschema | o_ls_test | table | pguser | 326 MB | 测试表 (1 row) mydb=> \di+ rid_index List of relations Schema | Name | Type | Owner | Table | Size | Description ----------+-----------+-------+--------+-----------+--------+------------- myschema | rid_index | index | pguser | o_ls_test | 107 MB |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下