📜  postgres 数据库大小 - SQL (1)

📅  最后修改于: 2023-12-03 14:45:34.212000             🧑  作者: Mango

Postgres 数据库大小 - SQL

在 PostgreSQL 中,我们可以使用 SQL 语句来获取数据库的大小。数据库大小是指数据库中存储的所有数据和索引占用的磁盘空间的总和。

以下是获取数据库大小的几种 SQL 语句:

查看所有数据库大小

可以使用以下 SQL 语句查看所有数据库的大小:

SELECT
    datname AS "Database Name",
    pg_size_pretty(pg_database_size(datname)) AS "Size"
FROM
    pg_database
ORDER BY
    pg_database_size(datname) DESC;

该 SQL 语句会显示所有数据库的名称和大小。结果将按照数据库大小排序,从大到小排列。使用 pg_size_pretty 函数可以将字节数转换为易读的格式(如KB、MB、GB等)。

查看单个数据库大小

如果只需要查看单个数据库的大小,可以使用以下 SQL 语句:

SELECT
    pg_size_pretty(pg_database_size('database_name')) AS "Size";

'database_name' 替换为要查询的数据库名称即可。

查看表大小

可以使用以下 SQL 语句查看某个表的大小:

SELECT
    pg_size_pretty(pg_total_relation_size('schema_name.table_name')) AS "Size";

需要将 schema_name.table_name 替换为要查询的表的模式名称和表名称。

查看索引大小

索引是数据库中常用的优化手段之一,如果需要查看某个索引的大小,可以使用以下 SQL 语句:

SELECT
    pg_size_pretty(pg_relation_size('schema_name.index_name')) AS "Size";

需要将 schema_name.index_name 替换为要查询的索引的模式名称和索引名称。

以上是 PostgreSQL 中几种获取数据库大小的 SQL 语句,通过这些语句可以方便地查看数据库占用的磁盘空间大小,帮助我们更好地管理和优化数据库。