Postgresql 将用户连接到其客户机架构的最佳方法?

Postgresql 将用户连接到其客户机架构的最佳方法?,postgresql,express,Postgresql,Express,我正在构建一个应用程序,我希望使用多租户策略为每个客户机创建一个模式。将所有用户存储在一个包含各自模式的引用列的单一模式内的users表中是否合适 Db_app_01 /schema_public /schema_public/table_users /schema_client_1 在表中,用户我有: |user_id|username|password|schema_id| -------------------------------------- |1 |user1 |*

我正在构建一个应用程序,我希望使用多租户策略为每个客户机创建一个模式。将所有用户存储在一个包含各自模式的引用列的单一模式内的users表中是否合适

Db_app_01
/schema_public
/schema_public/table_users
/schema_client_1
表中,用户
我有:

|user_id|username|password|schema_id|
--------------------------------------
|1      |user1   |*       |1        |

我在想,我可以很容易地查询正确的模式,因为用于身份验证的主用户表中有
schema\u id

您的方法对我来说很好,只要没有太多不同的用户。当表和模式的数量达到10万个时,元数据查询将变得缓慢,不再有趣

我不会用
模式id
构造动态查询,显式地引用适当的模式


相反,我会适当地设置
search\u path

谢谢。我刚刚阅读了search_path上的文档,我认为这是我所缺少的部分。我认为有一种比构造动态查询更好的方法。对于具有多个模式/表的多个不同用户的实例,您将如何更改方法?对所有用户使用一个(可能是分区的)表,并使用行级安全性。