Hieronder staan twee manieren om de grootte van een specifieke database in PostgreSQL te retourneren.
De PG_DATABASE_SIZE()
Functie
De PG_DATABASE_SIZE()
functie berekent de totale schijfruimte die wordt gebruikt door de database met de opgegeven naam of OID.
Voorbeeld:
SELECT PG_SIZE_PRETTY(PG_DATABASE_SIZE('pethotel'));
Resultaat:
8169 kB
Hier heb ik de grootte van het pethotel
geretourneerd database.
In dit geval heb ik ook de PG_SIZE_PRETTY()
. gebruikt functie om het resultaat terug te geven in een gemakkelijker door mensen leesbaar formaat met grootte-eenheden (bytes, kB, MB, GB of TB indien van toepassing).
Dit is wat we krijgen zonder die functie:
SELECT PG_DATABASE_SIZE('pethotel');
Resultaat:
8364911
Om the PG_DATABASE_SIZE()
te gebruiken functie, moet u CONNECT
. hebben privilege op de opgegeven database (die standaard wordt verleend) of lid zijn van de pg_read_all_stats
rol.
De \l+
Commando
Als u psql gebruikt, kunt u de \l+
. uitvoeren opdracht.
Voorbeeld:
\l+ pagila
Resultaat:
List of databases +--------+----------+----------+-------------+-------------+-------------------+-------+------------+-------------+ | Name | Owner | Encoding | Collate | Ctype | Access privileges | Size | Tablespace | Description | +--------+----------+----------+-------------+-------------+-------------------+-------+------------+-------------+ | pagila | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 16 MB | pg_default | | +--------+----------+----------+-------------+-------------+-------------------+-------+------------+-------------+
Deze keer controleerde ik de pagila
database.
Dit kan ook worden uitgevoerd met \list+
(\l+
is een afkorting voor \list+
).
De opdracht kan ook worden uitgevoerd zonder het plusteken (+
), echter, de +
is wat uitgebreide informatie retourneert, zoals de maat (dat is waar we hier in geïnteresseerd zijn).
De opdracht kan ook worden uitgevoerd zonder de database op te geven. In dit geval wordt informatie over alle databases geretourneerd.
Houd er rekening mee dat informatie over de grootte alleen beschikbaar is voor databases waarmee de huidige gebruiker verbinding kan maken.