Jak uzyskać faktycznie przydzielony rozmiar obszaru tabel według każdej bazy danych Postgres?


12

Obszar tabel Postgres obejmuje cały klaster. Dlatego w jaki sposób mogę obliczyć, ile miejsca przydzielonego przez każdą bazę danych w obszarze tabel Postgres?

Odpowiedzi:


16

Aby zająć miejsce na dysku w bazie danych (ładnie sformatowane):

SELECT pg_size_pretty(pg_database_size('mydb'))

Miejsce na dysku zajmowane przez obszar tabel:

SELECT pg_size_pretty(pg_tablespace_size('mytblspace'))

Dowiedz się więcej o funkcjach rozmiaru obiektu bazy danych w instrukcji :


2
Bardzo przydatne byłoby połączenie tego z SELECTtabelami systemowymi: SELECT spcname, pg_size_pretty(pg_tablespace_size(spcname)) FROM pg_tablespace;i SELECT datname, pg_size_pretty(pg_database_size(datname)) FROM pg_database;.
jpmc26
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.