Обсуждение: Checking a size of a given database

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

Checking a size of a given database

От
Chuck Amadi
Дата:
I have been given a task to try a proof of concept of migrating are active databases from PostgreSQL 8.0.1 to 8.2.3

I will install and configPostgreSQL on my local w/s and replicate the database users etc etc.

I have had a look inside /var/lib/pgsql/data/base and there are numerous  files (db's) which I believe is where I can
checkdata base size. 

1  108012  114465  122407  1261267  1261963  17229  17233  17234  17235  174066  19247  205009  21272  2793694  2794334
333245  333375 

I am aware that Postgresql creates directories to keep each database in.
These directories aren't names,they are kept as the *'OID's *of each
database (oid's are*"object identifiers"*).

Previously I just run pg_dump and thus run ls -lh on the db dump. Anyway
of checking a  size of a given database I have tried
the sql using select pg_database_size ('dbaname'); but no joy.

Cheers
Chuck

--
Chuck Amadi
ROK Corporation Limited
Ty ROK,
Dyffryn Business Park,
Llantwit Major Road,
Llandow,
Vale Of Glamorgan.
CF71 7PY

Tel: 01446 795 839
Fax: 01446 794 994
International Tel:   +44 1446 795 839

email: chuck.amadi@rokcorp.com

This email is confidential to the addressee only. If you do not believe
that you are the intended recipient, do not pass it on or copy it in any
way. Please delete it immediately.



Re: Checking a size of a given database

От
"Milen A. Radev"
Дата:
Chuck Amadi написа:
> I have been given a task to try a proof of concept of migrating are
> active databases from PostgreSQL 8.0.1 to 8.2.3
>
> I will install and configPostgreSQL on my local w/s and replicate the
> database users etc etc.
>
> I have had a look inside /var/lib/pgsql/data/base and there are
> numerous  files (db's) which I believe is where I can check data base size.
>
> 1  108012  114465  122407  1261267  1261963  17229  17233  17234  17235
> 174066  19247  205009  21272  2793694  2794334  333245  333375
>
> I am aware that Postgresql creates directories to keep each database in.
> These directories aren't names,they are kept as the *'OID's *of each
> database (oid's are*"object identifiers"*).
>
> Previously I just run pg_dump and thus run ls -lh on the db dump. Anyway
> of checking a  size of a given database I have tried
> the sql using select pg_database_size ('dbaname'); but no joy.


What does it mean "but no joy"? What was the error message?



--
Milen A. Radev

Re: Checking a size of a given database

От
adey
Дата:
I found the following script useful; for calculating database size:-
 
-- Query returns size of a database calculated from the no. 8k pages allocated to tables
SELECT 
 sum( relpages*8/1024 ) as MB
FROM
 pg_class
WHERE
-- relname != ''
-- relname = 'tablename'
 relnamespace = '2200'

 
On 4/17/07, Chuck Amadi <chuck.amadi@rokcorp.com> wrote:
I have been given a task to try a proof of concept of migrating are active databases from PostgreSQL 8.0.1 to 8.2.3

I will install and configPostgreSQL on my local w/s and replicate the database users etc etc.

I have had a look inside /var/lib/pgsql/data/base and there are numerous  files (db's) which I believe is where I can check data base size.

1  108012  114465  122407  1261267  1261963  17229  17233  17234  17235  174066  19247  205009  21272  2793694  2794334  333245  333375

I am aware that Postgresql creates directories to keep each database in.
These directories aren't names,they are kept as the *'OID's *of each
database (oid's are*"object identifiers"*).

Previously I just run pg_dump and thus run ls -lh on the db dump. Anyway
of checking a  size of a given database I have tried
the sql using select pg_database_size ('dbaname'); but no joy.

Cheers
Chuck

--
Chuck Amadi
ROK Corporation Limited
Ty ROK,
Dyffryn Business Park,
Llantwit Major Road,
Llandow,
Vale Of Glamorgan.
CF71 7PY

Tel: 01446 795 839
Fax: 01446 794 994
International Tel:   +44 1446 795 839

email: chuck.amadi@rokcorp.com

This email is confidential to the addressee only. If you do not believe
that you are the intended recipient, do not pass it on or copy it in any
way. Please delete it immediately.



---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
      choose an index scan if your joining column's datatypes do not
      match

Re: Checking a size of a given database

От
"Joshua D. Drake"
Дата:
adey wrote:
> I found the following script useful; for calculating database size:-

select pg_database_size?

http://www.postgresql.org/docs/8.2/static/functions-admin.html

>
> -- Query returns size of a database calculated from the no. 8k pages
> allocated to tables
> SELECT
>  sum( relpages*8/1024 ) as MB
> FROM
>  pg_class
> WHERE
> -- relname != ''
> -- relname = 'tablename'
>  relnamespace = '2200'
>
>
> On 4/17/07, *Chuck Amadi* <chuck.amadi@rokcorp.com
> <mailto:chuck.amadi@rokcorp.com>> wrote:
>
>     I have been given a task to try a proof of concept of migrating are
>     active databases from PostgreSQL 8.0.1 to 8.2.3
>
>     I will install and configPostgreSQL on my local w/s and replicate
>     the database users etc etc.
>
>     I have had a look inside /var/lib/pgsql/data/base and there are
>     numerous  files (db's) which I believe is where I can check data
>     base size.
>
>     1  108012  114465  122407  1261267  1261963  17229  17233  17234  17235  174066  19247  205009  21272  2793694
2794334 333245  333375 
>
>     I am aware that Postgresql creates directories to keep each database
>     in.
>     These directories aren't names,they are kept as the *'OID's *of each
>     database (oid's are*"object identifiers"*).
>
>     Previously I just run pg_dump and thus run ls -lh on the db dump.
>     Anyway
>     of checking a  size of a given database I have tried
>     the sql using select pg_database_size ('dbaname'); but no joy.
>
>     Cheers
>     Chuck
>
>     --
>     Chuck Amadi
>     ROK Corporation Limited
>     Ty ROK,
>     Dyffryn Business Park,
>     Llantwit Major Road,
>     Llandow,
>     Vale Of Glamorgan.
>     CF71 7PY
>
>     Tel: 01446 795 839
>     Fax: 01446 794 994
>     International Tel:   +44 1446 795 839
>
>     email: chuck.amadi@rokcorp.com <mailto:chuck.amadi@rokcorp.com>
>
>     This email is confidential to the addressee only. If you do not believe
>     that you are the intended recipient, do not pass it on or copy it in any
>     way. Please delete it immediately.
>
>
>
>     ---------------------------(end of
>     broadcast)---------------------------
>     TIP 9: In versions below 8.0, the planner will ignore your desire to
>           choose an index scan if your joining column's datatypes do not
>           match
>
>


--

       === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
              http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
PostgreSQL Replication: http://www.commandprompt.com/products/


Re: Checking a size of a given database

От
Jeff Frost
Дата:
On Tue, 17 Apr 2007, Joshua D. Drake wrote:

> adey wrote:
>> I found the following script useful; for calculating database size:-
>
> select pg_database_size?
>
> http://www.postgresql.org/docs/8.2/static/functions-admin.html

That works great for 8.1+ but I believe the OP wants to do it with 8.0.1.
If so, he'll have to install the dbsize contrib module to do it for the 8.0.1
DB.

>>     I have been given a task to try a proof of concept of migrating are
>>     active databases from PostgreSQL 8.0.1 to 8.2.3
>>
>>     I will install and configPostgreSQL on my local w/s and replicate
>>     the database users etc etc.
>>
>>     I have had a look inside /var/lib/pgsql/data/base and there are
>>     numerous  files (db's) which I believe is where I can check data
>>     base size.
>>
>>     1  108012  114465  122407  1261267  1261963  17229  17233  17234  17235
>> 174066  19247  205009  21272  2793694  2794334  333245  333375
>>
>>     I am aware that Postgresql creates directories to keep each database
>>     in.
>>     These directories aren't names,they are kept as the *'OID's *of each
>>     database (oid's are*"object identifiers"*).
>>
>>     Previously I just run pg_dump and thus run ls -lh on the db dump.
>>     Anyway
>>     of checking a  size of a given database I have tried
>>     the sql using select pg_database_size ('dbaname'); but no joy.
>>

--
Jeff Frost, Owner     <jeff@frostconsultingllc.com>
Frost Consulting, LLC     http://www.frostconsultingllc.com/
Phone: 650-780-7908    FAX: 650-649-1954

Re: Checking a size of a given database

От
Robert Treat
Дата:
On Tuesday 17 April 2007 07:39, Milen A. Radev wrote:
> Chuck Amadi написа:
> > I have been given a task to try a proof of concept of migrating are
> > active databases from PostgreSQL 8.0.1 to 8.2.3
> >
> > I will install and configPostgreSQL on my local w/s and replicate the
> > database users etc etc.
> >
> > I have had a look inside /var/lib/pgsql/data/base and there are
> > numerous  files (db's) which I believe is where I can check data base
> > size.
> >
> > 1  108012  114465  122407  1261267  1261963  17229  17233  17234  17235
> > 174066  19247  205009  21272  2793694  2794334  333245  333375
> >
> > I am aware that Postgresql creates directories to keep each database in.
> > These directories aren't names,they are kept as the *'OID's *of each
> > database (oid's are*"object identifiers"*).
> >
> > Previously I just run pg_dump and thus run ls -lh on the db dump. Anyway
> > of checking a  size of a given database I have tried
> > the sql using select pg_database_size ('dbaname'); but no joy.
>
> What does it mean "but no joy"? What was the error message?

Well, given that the function doesn't exist in 8.0.1, I'd guess it means that
it didn't work for him.  In 8.0.x you need to use the dbsize contrib module
to get database size, or match things up manually on disk with select
oid,datname from pg_database.

--
Robert Treat
Database Architect
http://www.omniti.com