如何为不同的Mac用户分离PostgreSQL数据?

时间:2011-05-16 20:05:54

标签: macos postgresql

在MacOS上安装PostgreSQL时,您需要创建一个数据文件夹,用于存储有关用户,dbs和权限的详细信息,但此数据是全局可用的。 有没有办法根据Mac用户分开这个?

这样:

  • 使用UserA登录时,PostgreSQL只会实例化/查看仅为UserA的PostgreSQL实例定义的DB_A1和DB_A2以及PostgreSQL用户。
  • 使用UserB登录时,PostgreSQL只会实例化/查看仅为UserB的PostgreSQL实例定义的DB_B1和DB_B2以及PostgreSQL用户。

1 个答案:

答案 0 :(得分:1)

根据我对PostgreSQL有点生疏的了解,你的意图是导致为他/她自己的保留端口上的每个用户启动postmaster进程。虽然这是可能的,但它闻起来像是来自管理地狱的烟雾(不计算为大部分时间等待的单个用户保留的胖RDBMS进程的开销)。积极表达我建议考虑以下选项之一:

  • pg_hba.conf添加一行local all sameuser all md5,以允许所有本地用户仅访问其个人数据库(以用户名命名)。根据您使用的实际PostgreSQL版本,可能会进一步限制对系统数据的访问(在这种情况下最好咨询documentation)。

  • 根据数据量,如果并发访问不是关键必需品(这似乎是这里的情况),请切换到sqlite3;它具有高性能,数据位于单个文件中,访问由库而不是完整的RDBMS后台进程armada提供,并且随时可用于每个Mac OS X.