If you want to run multiple physical databases on one server, then you have four main options, which are as follows:
- Option 1: Run multiple sets of tables in different schemas in one database of a PostgreSQL instance (covered in the Using multiple schemas recipe)
- Option 2: Run multiple databases in the same PostgreSQL instance (covered in the Giving users their own private database recipe)
- Option 3: Run multiple PostgreSQL instances on the same virtual/physical system (covered in the Running multiple servers on one system recipe)
- Option 4: Run separate PostgreSQL instances in separate virtual machines on the same physical server
Which is best? Well, that's certainly a question many people ask, and something on which many views ...