{{tag>serveur réseau}} ====== PgBouncer ====== PgBouncer est un pooler de connexion pour [[PostgreSQL]]. Un pooler de connexion permet de maintenir ouvertes des sessions entre lui-même et le serveur, ce qui rend plus rapide l'ouverture de sessions depuis les clients, une application Web par exemple. PgBouncer permet aussi de mutualiser les sessions dans le serveur, économisant ainsi des ressources. PgBouncer propose plusieurs mode de partage : par requête (default), par transaction ou par session. ===== Installation ===== il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>pgbouncer]]** ===== Configuration ===== PgBouncer se positionne entre la base de données postgres et le client. Il fait office de relais. Il faut déclarer les bases que l'on souhaite rendre accessibles par PgBouncer vi /etc/pgbouncer/pgbouncer.ini nombasepgboucner = host=127.0.0.1 dbname=nombasesurleserveur Un fichier d'utilisateur est à mettre à jour également. Il contient la liste des utilisateurs et leurs mots de passe autorisés à accéder à pgBouncer. vi /etc/pgbouncer/userlist.txt "utilisateur" "motdepasse" Note : Le pooler peut être installé sur une autre machine que l'instance PostgreSQL ===== Démarrage ===== Nous avons configuré notre pgBouncer. Il faut maintenant le démarrer. /etc/init.d/pgbouncer start Pour forcer le démarrage du pgBouncer au lancement de la machine passer la valeur ''start = 1'' dans le fichier suivant vi /etc/default/pgbouncer ===== Test de la connexion ===== Pour tester votre connexion. psql -h HostMachine -p 6432 -U utilisateur nombasepgbouncer Notez le port par défaut de pgBouncer est le 6432. Il peut être modifié dans le fichier ''/etc/pgbouncer/pgbouncer.ini'' ===== Voir aussi ===== * [[https://www.pgbouncer.org/|Site officiel]] * [[https://public.dalibo.com/archives/publications/|Public Documents about PostgreSQL and Dalibo]]