PgBouncer
pgbouncer.org
What it is
PgBouncer is a self-hosted connection pooler for PostgreSQL. It reuses server connections to lessen the performance cost of opening new ones, and offers session, transaction, and statement pooling. Statement pooling does not allow multi-statement transactions. PgBouncer can send connections to databases on different hosts, but it has no built-in multi-host load balancing or failover detection; DNS round-robin, external TCP load balancers, DNS changes, or external tools are described as alternatives. It can track protocol-level prepared statements in transaction and statement modes when max_prepared_statements is non-zero. Authentication options include client certificates, SCRAM-SHA-256, LDAP, PAM, and HBA-based configuration. The features page lists default memory needs of 2 kB per connection. PgBouncer is free, with source releases and references to native packages and RPM and Debian repositories. It runs on Linux and Windows; MinGW is the documented supported Windows build environment. Building requires Libevent 2.0 or later, pkg-config, and a C11-capable compiler; TLS support also requires OpenSSL.
Spec sheet
- Purpose
- PgBouncer is a PostgreSQL connection pooler that reuses server connections to reduce the performance impact of opening new connections.Read 3 Oct 2026 · pgbouncer.org
- Integrations
- Optional build integrations include PAM, LDAP, and systemd support.Read 3 Oct 2026 · pgbouncer.org
- Founded
- 2007Read 28 Sep 2026 · pgbouncer.org
- Authentication
- Documented authentication options include client certificates, SCRAM-SHA-256, LDAP, PAM, and HBA-based configuration.Read 3 Oct 2026 · pgbouncer.org
- Backend hosts
- PgBouncer can route to destination databases on different hosts and is not tied to one backend server.Read 3 Oct 2026 · pgbouncer.org
- Build dependencies
- Building requires Libevent 2.0 or later, pkg-config, and a C11-capable compiler; OpenSSL is needed for TLS support.Read 3 Oct 2026 · pgbouncer.org
- Distribution
- The downloads page offers source releases and points to native OS packages and dedicated RPM and Debian package repositories.Read 3 Oct 2026 · pgbouncer.org
- Failover
- PgBouncer does not provide internal failover-host configuration or detection; its FAQ describes DNS reconfiguration and external tools as options.Read 3 Oct 2026 · pgbouncer.org
- Load balancing
- PgBouncer has no internal multi-host load-balancing configuration; its FAQ describes using DNS round-robin or an external TCP load balancer such as HAProxy or LVS.Read 3 Oct 2026 · pgbouncer.org
- Memory
- The features page lists default memory requirements of 2 kB per connection.Read 3 Oct 2026 · pgbouncer.org
- Operating systems
- The installation page documents running PgBouncer on Windows and specifies MinGW as its only supported Windows build environment.Read 3 Oct 2026 · pgbouncer.org
- Pooling modes
- It supports session, transaction, and statement pooling, with statement pooling disallowing multi-statement transactions.Read 3 Oct 2026 · pgbouncer.org
- Prepared statements
- It can track protocol-level prepared statements in transaction and statement pooling when max_prepared_statements is non-zero.Read 3 Oct 2026 · pgbouncer.org
- Release and security
- The homepage says version 1.26.0, released September 23, 2026, fixes three denial-of-service CVEs.Read 3 Oct 2026 · pgbouncer.org
- TLS
- The installation documentation lists OpenSSL 1.0.1 or later as a build dependency for TLS support.Read 3 Oct 2026 · pgbouncer.org
Plans and prices
Strong points and limits
Strong points
- Offers session, transaction, and statement pooling.
- Routes to databases on different hosts.
- Tracks prepared statements in transaction and statement modes.
- Documents several authentication options.
- Free, with source and package distribution options.
Limits
- No internal multi-host load balancing.
- No internal failover configuration or detection.
- Windows builds require the supported MinGW environment.
- TLS builds require OpenSSL 1.0.1 or later.
Who it suits
PgBouncer suits PostgreSQL operators who want to reuse connections and choose among three pooling modes. It is self-hosted for Linux or Windows, with a documented MinGW build environment for Windows.
Verdict
PgBouncer specifies its pooling options, authentication choices, and build requirements. Readers should account for its lack of built-in load balancing and failover when planning deployment.
Where Specifiction places it
- Database Proxy Software#11 of 317.7