BSD Ports

databases/pgbouncer 1.25.1_1 FreeBSD

Lightweight connection pooler for PostgreSQL

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
License
BSD2CLAUSE
Categories
databases
Package size
216.9 KiB, 503.0 KiB installed

Description

PgBouncer is a PostgreSQL connection pooler. Any target application can be connected to PgBouncer as if it were a PostgreSQL server, and PgBouncer will create a connection to the actual server, or it will reuse one of its existing connections.

The aim of PgBouncer is to lower the performance impact of opening new connections to PostgreSQL.

In order not to compromise transaction semantics for connection pooling, PgBouncer supports several types of pooling when rotating connections:

* Session pooling

Most polite method. When a client connects, a server connection will be assigned to it for the whole duration it stays connected. When the client disconnects, the server connection will be put back into pool. This mode supports all PostgreSQL features.

* Transaction pooling

A server connection is assigned to a client only during a transaction. When PgBouncer notices that the transaction is over, the server will be put back into the pool.

This mode breaks a few session-based features of PostgreSQL. You can use it only when the application cooperates by not using features that break. See the table below for incompatible features.

* Statement pooling

Most aggressive method. This is transaction pooling with a twist: Multi-statement transactions are disallowed. This is meant to enforce "autocommit" mode on the client, mostly targeted at PL/Proxy.

In the other systems

SystemPortVersion
FreeBSDdatabases/pgbouncer1.25.1_1
OpenBSDdatabases/pgbouncer1.26.1p0
NetBSDdatabases/pgbouncer1.22.1
DragonFlydatabases/pgbouncer1.23.1

Install

Binary package:

pkg install pgbouncer

From the ports tree:

cd /usr/ports/databases/pgbouncer/ && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	pgbouncer>0:databases/pgbouncer

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

Repositoryaarch64amd64armv6armv7i386
FreeBSD:14:latest1.25.1_11.25.1_11.17.01.24.1-
FreeBSD:14:quarterly1.25.1_11.25.1_1n/a1.23.1-
FreeBSD:15:latest1.25.1_11.25.1_1n/a1.24.11.24.1
FreeBSD:15:quarterly1.25.1_11.25.1_1n/an/an/a
FreeBSD:16:latest1.25.1_11.25.1_1n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependencies

As this port's Makefile names them.

Library 1

The full lists below include those, and their dependencies in turn.

Build dependencies 12
Run dependencies 1

No port depends on this one.

Configuration

Options name: databases_pgbouncer

OptionDefaultDescription
CARESoffAsynchronous DNS resolution via c-ares
MANPAGESonBuild and/or install manual pages
USES
cpe gmake pkgconfig python:build shebangfix ssl
Service scripts
pgbouncer

Message after installing

To setup pgbouncer you need to edit the configuration file:
      /usr/local/etc/pgbouncer.ini

      You will also need to define the list of allowed users as
      per the pgbouncer(5) man page. See the sample file:
      /usr/local/etc/pgbouncer.users.sample

      To run pgbouncer from startup, add pgbouncer_enable="YES"
      in your /etc/rc.conf.

Files

Manual pages 2
  • pgbouncer(1)
  • pgbouncer(5)
pkg-plist 7
  • bin/pgbouncer
  • @sample etc/pgbouncer.ini.sample
  • @sample etc/pgbouncer.users.sample
  • share/man/man1/pgbouncer.1.gz
  • share/man/man5/pgbouncer.5.gz
  • @dir(,,)
  • @dir(,,)
distinfo 1
FileSizeSHA256
pgbouncer-1.25.1.tar.gz8648016e566ae92fe3ef7f6a1b9e26d6049f7d7ca39c40e29e7b38f6d5500ae15d8465
Master sites 1
  • https://www.pgbouncer.org/downloads/files/1.25.1/

Commit history 0

No commits in the history this site was built from.