pg_database_size()

返回数据库大小的函数

pg_database_size() 是一个系统函数,用于返回指定数据库的总大小。

pg_database_size() 添加于 PostgreSQL 8.1

用法

pg_database_size ( name ) → bigint
pg_database_size ( oid ) → bigint

任何拥有对该数据库 CONNECT 权限的用户,或者(从 PostgreSQL 10 开始)属于 pg_read_all_stats 角色的用户都可以执行 pg_database_size()

请注意,pg_database_size() 计算的是数据库数据目录(位于 base/ 子目录下)以及任何关联 表空间 中相应目录的实际磁盘使用量。这通常会比计算该数据库中所有对象的总和得到更大的读数。

变更历史

示例

pg_database_size() 的基本执行示例

postgres=# SELECT pg_database_size('proddb');
 pg_database_size 
------------------
       6309618543
(1 row)

尝试确定一个不存在的数据库的大小

postgres=# SELECT pg_database_size('foo');
ERROR:  database "foo" does not exist

通过 OID 尝试确定一个不存在的数据库的大小

postgres=# SELECT pg_database_size(99::oid);
 pg_database_size 
------------------
                 
(1 row)

(返回了 NULL)。

分类

系统函数

另请参阅

pg_tablespace_size(), pg_relation_size(), pg_column_size(), pg_table_size(), pg_indexes_size()

反馈

请在此处 提交关于“pg_database_size()”的任何评论、建议或更正