Re: Sizes for all databases

From: Robert Treat <xzilla(at)users(dot)sourceforge(dot)net>
To: Daniel Rubio <drubior(at)tinet(dot)org>
Cc: pgsql-admin <pgsql-admin(at)postgresql(dot)org>
Subject: Re: Sizes for all databases
Date: 2003-04-04 18:03:53
Message-ID: 1049479433.8126.151.camel@camel
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

This looks pretty neat. Perhaps you can add it to the PostgreSQL
Cookbook as well?

http://www.brasileiro.net:8080/postgres/cookbook/

Robert Treat

On Mon, 2003-03-31 at 10:32, Daniel Rubio wrote:
> Hi!
>
> Not long time ago, I asked the list how to obtain the sizes of all the
> databases on my postgres, to have a control on how growths the client's
> applications.
>
> Now I've found a solution and I thinked that it could be useful for
> people working on ISP's offering postgres services or simply as an other
> control utility then I'll put here for those who are interesed.
>
> 1-The function uses the database_size function that you can find in the
> contrib directory (dbsize)
>
> 2-Create a table in one of your databases (with plpgsql active and the
> addient permissions) with this structure
>
> CREATE TABLE "mides" (
> "nom" name NOT NULL,
> "mida" int4 NOT NULL
> );
>
> 3-This is the function you must add
>
> CREATE FUNCTION mides_bds() RETURNS setof mides AS '
> DECLARE
> actual mides%ROWTYPE;
> treball RECORD;
> mida int4;
> BEGIN
> FOR treball IN SELECT datname FROM pg_database LOOP
> SELECT INTO mida database_size(treball.datname);
> mida:=mida/1024;
> SELECT INTO actual a.datname,mida FROM pg_database a WHERE
> a.datname=treball.datname;
> RETURN NEXT actual;
> END LOOP;
> RETURN actual;
> END;
> 'LANGUAGE 'plpgsql';
>
> 4-Now, if you execute SELECT * FROM mides_bds() you'll obtain the sizes
> in Kb for all your databases
>
> I hope it's useful for someone else, and once more, sorry for my english
> --
> ********************************************************
> Daniel Rubio Rodríguez
> OASI (Organisme Autònom Per la Societat de la Informació)
> c/ Assalt, 12
> 43003 - Tarragona
> Tef.: 977.244.007 - Fax: 977.224.517
> e-mail: drubio(at)oasi(dot)org
> ********************************************************
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> message can get through to the mailing list cleanly

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Robert Treat 2003-04-04 18:19:38 Re: restore a dump file (with postgis tables): errors!!
Previous Message Tom Lane 2003-04-04 18:02:18 Re: LVM snapshots