1.手動查看 sql
查看數據庫mydatabase的oid 數據庫
SELECT oid from pg_database where datname='mydatabase';oid | datname
查找數據庫的目錄PostgreSQL\9.2\data\base下,查看名稱爲12002的文件的大小便是數據庫postgres的大小; express
cd /var/lib/postgres/data/base/12002 du -sh2.SQL語句查詢
select pg_size_pretty(pg_database_size('mydatabase'));
pg_size_pretty
----------------
42 GB
(1 row) 函數
PostgreSQL 提供了多個系統管理函數來查看錶,索引,表空間及數據庫的大小 post
函數名 | 返回類型 | 描述 |
pg_column_size(any) | int | 存儲一個指定的數值須要的字節數(可能壓縮過) |
pg_database_size(oid) | bigint | 指定OID的數據庫使用的磁盤空間 |
pg_database_size(name) | bigint | 指定名稱的數據庫使用的磁盤空間 |
pg_indexes_size(regclass) | bigint | 關聯指定表OID或表名的表索引的使用總磁盤空間 |
pg_relation_size(relation regclass, fork text) | bigint | 指定OID或名的表或索引,經過指定fork('main', 'fsm' 或'vm')所使用的磁盤空間 |
pg_relation_size(relation regclass) | bigint | pg_relation_size(..., 'main')的縮寫 |
pg_size_pretty(bigint) | text | Converts a size in bytes expressed as a 64-bit integer into a human-readable format with size units |
pg_size_pretty(numeric) | text | 把以字節計算的數值轉換成一我的類易讀的尺寸單位 |
pg_table_size(regclass) | bigint | 指定表OID或表名的表使用的磁盤空間,除去索引(可是包含TOAST,自由空間映射和可視映射) |
pg_tablespace_size(oid) | bigint | 指定OID的表空間使用的磁盤空間 |
pg_tablespace_size(name) | bigint | 指定名稱的表空間使用的磁盤空間 |
pg_total_relation_size(regclass) | bigint | 指定表OID或表名使用的總磁盤空間,包括全部索引和TOAST數據 |