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
[...] [...]
[...] http://keniamilene.wordpress.com/2007/09/25/volumetria-de-banco-postgresql/ [...]
Tem alguma função do postgres que me retorne o tamanho da tabela vazia em bytes, ou seja, o valor que a minha tabela consome de espaço estando ela vazia.
GRata