1
0
mirror of https://github.com/jbranchaud/til synced 2026-01-02 22:58:01 +00:00
Files
til/postgres/check-the-size-of-databases-in-a-cluster.md

926 B

Check The Size Of Databases In A Cluster

The \l command in psql will list all the databases for the server. The field surfaced by this meta-command are:

  • Name
  • Owner
  • Encoding
  • Locale Provider
  • Collate
  • Ctype
  • ICU Locale
  • ICU Rules
  • Access privileges

If we add a +, issuing instead \l+, we get three additional fields:

  • Size
  • Tablespace
  • Description

The Size column is the human-formatted size of each database.

Another way to do this is with some SQL querying the underlying record keeping of the server's database.

select
  db.datname as db_name,
  pg_size_pretty(pg_database_size(db.datname)) as db_size
from pg_database db
order by pg_database_size(db.datname) desc;

Credit to this StackOverflow answer for how to do this with a SQL query.

source