postgres查看数据库大小

  1. 查看单库大小

    SELECT pg_size_pretty(pg_database_size('数据库名'));

  2. 查看所有库大小

    -- 列出所有数据库名称及大小(格式化)
    SELECT
    datname AS "数据库名",
    pg_size_pretty(pg_database_size(datname)) AS "大小"
    FROM pg_database
    ORDER BY pg_database_size(datname) DESC;

  3. 查看数据库各个表大小

    -- 查看指定数据库中各表的大小(含索引)
    -- 需先连接到目标数据库执行
    SELECT
    schemaname || '.' || tablename AS "表名",
    pg_size_pretty(pg_total_relation_size(tablename)) AS "总大小(含索引)",
    pg_size_pretty(pg_relation_size(tablename)) AS "数据大小",
    pg_size_pretty(pg_indexes_size(tablename)) AS "索引大小"
    FROM pg_tables
    WHERE schemaname = 'public' -- 指定模式(如public)
    ORDER BY pg_total_relation_size(tablename) DESC;

  4. 查看磁盘占用

PostgreSQL 数据默认存储在data_directory目录下,可通过以下命令查看:

sql

复制代码
-- 查看数据存储目录
SHOW data_directory;

然后通过系统命令(如du)查看目录大小:

bash

运行

复制代码
# Linux/macOS下查看目录总大小
du -sh /var/lib/postgresql/14/main  -- 替换为实际数据目录
相关推荐
troy1289 小时前
向量数据库选型指南:Milvus / Qdrant / Chroma / pgvector
数据库·milvus
彧azz10 小时前
Redis 全面指南:从核心概念到高可用架构实战
数据库·redis·架构
DBA小马哥11 小时前
MongoDB 数据同步怎么做?oplog、Change Streams、同步工具 4 种方案一次讲清(附踩坑清单)
数据库·mongodb
香菜TTT12 小时前
Redis的哨兵机制
java·数据库·redis
风哥2号13 小时前
数据库教程FGMT13‑Oracle性能优化之数据仓库与分区表
数据库·oracle·性能优化
玉宇夕落13 小时前
Docker + Milvus,数据库永久存放记忆,让对话历史永不丢失
数据库·docker·llm
Zenova EdgeOS14 小时前
工业网关数据持久化:从同步到 WAL 的工程实战
网络·数据库·oracle
企查查数据服务14 小时前
全军禁入下客商准入风控,关联图谱与穿透核查
大数据·开发语言·数据库·php
冰帆<14 小时前
DBViewer — 把数据库工作台,安装进浏览器
数据库·数据可视化·数据同步