PgBouncer

Allikas: Kuutõrvaja
Redaktsioon seisuga 13. aprill 2010, kell 14:40 kasutajalt Imre (arutelu | kaastöö)

Sissejuhatus

PgBouncer https://developer.skype.com/SkypeGarage/DbProjects/PgBouncer on andmebaasi ühenduste pool.

Tööpõhimõte

TODO

Ettevalmistused

PgBounceri kasutamine eeldab libevent teegi olemasolu süsteemis. Otseselt on vaja sellega tegeleda, kui otsustatakse PgBouncer süsteemi paigaldada lähtetekstist.

Paigaldamine

Tarkvara paigaldamiseks Debian Squeeze keskkonnas sobib öelda

# apt-get install pgbouncer

Paigaldatakse muu seas sellised failid

/usr/sbin/pgbouncer
/etc/default/pgbouncer
/etc/pgbouncer/pgbouncer.ini
/etc/pgbouncer/userlist.txt
/etc/init.d/pgbouncer

Seadistamine ja käivitamine

Tarvara tööd kontrollivad seadistusfailid

  • /etc/pgbouncer/pgbouncer.ini, mille sisu võiks olla nt
# egrep -v "^$|^;" /etc/pgbouncer/pgbouncer.ini
[databases]
test = host=127.0.0.1 dbname=test

[pgbouncer]
logfile = /var/log/postgresql/pgbouncer.log
pidfile = /var/run/postgresql/pgbouncer.pid
listen_addr = *
listen_port = 6432
unix_socket_dir = /var/run/postgresql
auth_type = trust
auth_file = /etc/pgbouncer/userlist.txt
admin_users = postgres
stats_users = postgres
pool_mode = session
server_reset_query = 
server_check_query = select 1
server_check_delay = 10
max_client_conn = 100
default_pool_size = 20
log_connections = 1
log_disconnections = 1
log_pooler_errors = 1
  • /etc/pgbouncer/userlist.txt sisaldab nt
"postgres" "parool"

Käivitamiseks peab olema failis /etc/default/pgbouncer rida

START=1

ja tuleb öelda

# /etc/init.d/pgbouncer start

Kasutamine

PgBouceri kasutamiseks tuleb ühenduda PgBounceri porti, nt 192.168.10.205:6432 ja kasutada seda nagu tavalist andmebaasi.

Haldamine

PgBounceri haldamiseks sobib kasutada andmebaasi pgbouncer, nt

$ psql -h 127.0.0.1 -p 6432 -U postgres pgbouncer -c 'show databases;'
   name    |   host    | port | database  | force_user | pool_size | reserve_pool 
-----------+-----------+------+-----------+------------+-----------+--------------
 pgbouncer |           | 6432 | pgbouncer | pgbouncer  |         2 |            0
 test      | 127.0.0.1 | 5432 | test      |            |        20 |            0

(2 rows)

Kasulikud lisamaterjalid