将 C# 连接到 PgBouncer

connect C# to PgBouncer

我正在使用 C# 和 PostgreSQL。我已经使用 Npgsql 连接到 PostgreSQL。一切正常。现在我想在 PgBouncer 的帮助下使用连接池 tool.Database 信息已设置为 PgBouncer。因为现在 PgBouncer 将负责与 PostgreSQL 数据库的连接(如果我错了,请纠正我)。

但问题是,我找不到在C#中连接PgBouncer的方法。如果有人这样做过,请告诉我。

另外,在 PostgreSQL 中使用连接池代替 PgBouncer 好吗?如果是,请告诉我怎么做。

谢谢

将 pgbouncer 与 Npgsql 一起使用只是意味着让 Npgsql 连接到 pgbouncer 而不是直接连接到 PostgreSQL - 您需要做的就是为 pgbouncer 提供主机和端口。

请注意,Npgsql 带有一个高效的内置连接池,通常应该首选它 - 确保您有充分的理由使用 pgbouncer 而不是内部池。默认情况下,Npgsql 池是打开的,如果你想使用 pgbouncer,你应该通过在你的连接字符串中传递 Pooling=false 来禁用 Npgsql 池。

Also is it good to use connection pooling in PostgreSQL instead of PgBouncer?

这没有任何意义 - PostgreSQL(您的数据库服务器)本身不提供任何池。