You need to specify the memory usage when you start the postmaster.
My /etc/rc.d/init.d/postgresql script has this line:
su -l postgres -c "/usr/bin/pg_ctl -D $PGDATA -p /usr/bin/postmaster -o
'-B 4096 -i' start >/dev/null 2>&1"
The -B option tells postgres to use 8KBx4096= 32MB pr. postmaster. The
default value is somewhere around 1MB.
I also have this line in my start script:
echo 104857600 >/proc/sys/kernel/shmmax
Which defines the maximum amount of shared memory.
HTH,
Poul L. Christiansen
On Thu, 25 Jan 2001, Guillaume Lémery wrote:
> > If you have enough RAM, the database will already be in memory, in a
> > manner of speaking - your kernel will have all of the files held in disk
> > cache.
>
> Ok, but if so, why 10 simultaneous same queries on a well-indexed table with only
>500 000 records take a so long time ? :-/
>
> >
> >> What else should I know about memory with PostGreSQL ?
> >
> >
> > You can increase the shared memory, and you can increase the amount of
> > memory used for sorts/joins, but I haven't run across much more than that.
> > Postgres is just a very memory-efficient piece of work. I laugh when I hear
> > of people using MS's database, and adding gigs and gigs of RAM for even
> > modest databases to perform well. Our server has a half of a gig, and I
> > just can't get Postgres to use it all. I guess I better come up with a few
> > more large tables to join to. : )
>
> My server has 1G RAM and yes, I still have 800MB free when PG is running...
> But I tried to avoid join or sorts in my queries, so I don't think I
> need to tune the amount of memory used for sorts/joins...
>
> Guillaume.
>
>