Обсуждение: How to identify all storage in a schema

Поиск
Список
Период
Сортировка

How to identify all storage in a schema

От
"Campbell, Lance"
Дата:
PostgreSQL 9.3
Is there a query one can run that will give you a total storage for all objects (tables, indexes, etc) associated with
aparticular schema? 

Thanks for your assistance.

Lance Campbell
Software Architect
Web Services at Public Affairs
217-333-0382



Re: How to identify all storage in a schema

От
Thomas Kellerer
Дата:
Campbell, Lance schrieb am 14.01.2015 um 16:56:
> PostgreSQL 9.3
> Is there a query one can run that will give you a total storage for all objects (tables, indexes, etc) associated
witha particular schema? 
>
> Thanks for your assistance.

  select table_schema,
         sum(pg_total_relation_size(table_schema|| '.' ||table_name))
  from information_schema.tables
  where table_schema not in ('information_schema', 'pg_catalog')
  group by table_schema;

Of for just a single schema:

  select sum(pg_total_relation_size(table_schema|| '.' ||table_name))
  from information_schema.tables
  where table_schema = 'foobar';

There are other functions to retrieve the table or database sizes:

http://www.postgresql.org/docs/current/static/functions-admin.html#FUNCTIONS-ADMIN-DBOBJECT

Thomas


Re: How to identify all storage in a schema

От
"Campbell, Lance"
Дата:
Fantastic!  Thanks so much for the query.


Thanks,

Lance Campbell
Software Architect
Web Services at Public Affairs
217-333-0382 



-----Original Message-----
From: pgsql-admin-owner@postgresql.org [mailto:pgsql-admin-owner@postgresql.org] On Behalf Of Thomas Kellerer
Sent: Wednesday, January 14, 2015 10:11 AM
To: pgsql-admin@postgresql.org
Subject: Re: [ADMIN] How to identify all storage in a schema

Campbell, Lance schrieb am 14.01.2015 um 16:56:
> PostgreSQL 9.3
> Is there a query one can run that will give you a total storage for all objects (tables, indexes, etc) associated
witha particular schema?
 
> 
> Thanks for your assistance.

  select table_schema,
         sum(pg_total_relation_size(table_schema|| '.' ||table_name))
  from information_schema.tables
  where table_schema not in ('information_schema', 'pg_catalog')
  group by table_schema;

Of for just a single schema:

  select sum(pg_total_relation_size(table_schema|| '.' ||table_name))
  from information_schema.tables
  where table_schema = 'foobar';

There are other functions to retrieve the table or database sizes:

http://www.postgresql.org/docs/current/static/functions-admin.html#FUNCTIONS-ADMIN-DBOBJECT

Thomas




--
Sent via pgsql-admin mailing list (pgsql-admin@postgresql.org) To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin