pg_database_size()

返回数据库大小的函数

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

pg_database_size()PostgreSQL 8.1 中添加。

用法

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

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

请注意,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()" 的评论、建议或更正 此处