多个表或多个模式

时间:2010-03-26 02:55:57

标签: database-design postgresql

Postgresql: is it better using multiple databases with 1 schema each, or 1 database with multiple schemas?

我是PostgreSQL架构概念的新手。

对于上面提到的场景,我想知道

  1. 为什么我们不使用单个数据库(默认模式名为public)
  2. 为什么我们没有一个表来存储多个用户行?
  3. 其他保存用户相关信息的表,外键指向用户表。
  4. 任何人都可以为我提供一个真实案例场景,单个数据库,多个架构将非常有用,并且无法通过传统的单一数据库,单一架构解决。

1 个答案:

答案 0 :(得分:2)

来自http://www.postgresql.org/docs/8.4/interactive/ddl-schemas.html

为什么人们可能想要使用模式有几个原因:

*To allow many users to use one database without interfering with each other.
*To organize database objects into logical groups to make them more manageable.
*Third-party applications can be put into separate schemas so they do not collide with the names of other objects. 

模式类似于操作系统级别的目录,但模式不能嵌套。