Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

What is the memory/cpu/other requirements to run PostgreSQL database server efficiently ? Is a way to appoint a hardware configuration for some sort of requirements - for example number of users, number of queries etc ?

share|improve this question

PostgreSQL is open source and you can use on almost any Linux/UNIX-like machine, plus Windows and Mac OS X. See the buildfarm for a list of known-working configurations. Precompiled binary installers and/or packages are available for popular platforms. I had some problems compiling it on AIX, but it was because I used gcc instead of IBM's XLC.

The minimum RAM you will need is 32MB, and you'll need least 50KB of disk space. As with any other database everything depends of the queries you are going to do, how many users you will have, what your performance requirements are, etc.

If you can, try to divide your DB between different physical hard drives (eg WAL on one, main tables + indexes on another), tune postgresql.conf to fit your machine, etc.

I recommend that you to read Greg Smith's book PostgreSQL High Performance.

share|improve this answer
50KB of disk space?? – Antony Hatchkins Jan 15 at 10:36

First, the minimum requirements will be met by almost any machine. PostgreSQL can start and run (for a small db with few concurrent connections!) on very modest hardware. As of 9.2 you can get linear scalability for reads up to about 64 cores, and for writes up to around 20 cores, if I understand Robert Haas's blog posts correctly. In general you need less CPU speed and more cores, and better disk I/O to get the best performance.

So PostgreSQL scales down pretty well, and it also scales up quite well. As for your questions about configuration, you can set maximum number of users, max timeouts for queries, and logging of slow queries in the postgresql.conf.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.