在关系数据库中创建用户后调用脚本是否可取?

Is it advisable to call script after user creation in relational database?

当在 postgres 中创建用户时,我需要将用户动态添加到 pgbouncer。

是否建议使用触发器来调用 shell 脚本,该脚本在 pg_catalog.authid 插入事件的 pgbouncer userslist.txt 中添加条目或直接从应用程序调用 shell 脚本。

我在 pgbouncer 中找不到任何支持动态添加用户和数据库详细信息到 pgbouncer 配置的功能。

没问题,您不需要将所有用户都添加到 userlist.txt

您为 PostgreSQL 创建了一个特殊的“身份验证用户”,并且只有 userlist.txt 中的那个。在 pgbouncer.ini 中将该用户配置为 auth_user,并配置允许该用户检索另一个用户密码的 auth_query

然后身份验证工作如下:

  • 当您尝试连接到 pgBouncer 时,它会从 PostgreSQL 检索用户密码

  • pgBouncer 使用该密码对您进行身份验证

参见 here 示例。