Deciding on a design for multitenancy

There are many reasons why we might want to split groups of tables or applications: security, resource control, convenience, and so on. Whatever the reason, we often need to separate groups of tables (I avoid saying the word "database", just to avoid various kinds of confusion).

This topic is frequently referred to as multitenancy, though it is not a fully accepted term as yet.

The purpose of this recipe is to discuss the options and lead to other, more detailed recipes.

How to do it…

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 ...

Get PostgreSQL 9 Administration Cookbook - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.