Volumetria de Banco PostgreSQL

Tudo bem … já que fiz volumetria pro Oracle … segue a volumetria pro PostgreSQL !!!! (só pra não ficar com ciúmes).

O script do schema deu uma emperrada mas o Fabio Telles deu uma sugestão e a coisa saiu. Valeu Fabio !!!!

— Tamanho por tabela

SELECT n.nspname AS schemaname, c.relname AS tablename, C.reltuples::int AS Registros, pg_size_pretty(pg_relation_size(n.nspname ||’.’||c.relname)) as Tamanho
FROM pg_class c
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
LEFT JOIN pg_tablespace t ON t.oid = c.reltablespace
WHERE c.relkind = ‘r’::”char”
–AND n.nspname = ‘acc’
AND nspname NOT IN
(‘dbateste’,’information_schema’,’pg_catalog’,’pg_temp_1′,’pg_toast’,’postgres’,’publico’,’public’)
ORDER BY n.nspname

— Tamanho por schema

SELECT n.nspname, sum(c.reltuples)::int as Registros,
pg_size_pretty(pg_relation_size(n.nspname ||’.’||c.relname)) as Tamanho
FROM pg_class c
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
WHERE c.relkind = ‘r’::”char”
AND nspname NOT IN
(‘dbateste’,’information_schema’,’pg_catalog’,’pg_temp_1′,
‘pg_toast’,’xmg’,’postgres’,’publico’,’public’)
GROUP BY n.nspname, c.relnamespace, c.relname

— Tamanho por TableSpace

SELECT spcname, pg_size_pretty(pg_tablespace_size (spcname))
FROM pg_tableSpace;

— Tamanho por Banco

SELECT datname, pg_size_pretty(pg_database_size(datname))
FROM pg_database;

É Isso Ai !!!
Kenia Milene

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s