sql >> Databasteknik >  >> RDS >> PostgreSQL

Anslutningspoolning med Pgbouncer på PostgreSQL 9.0

Anslutningspooling, varför vi går för anslutningspooling i PostgreSQL, När din applikation kräver mycket många samtidiga anslutningsträffar måste du närma dig det, eftersom anslutningspoolen sitter mellan din applikation och databasen.

Tanken bakom anslutningspoolen är att du har tillräckligt med anslutningar för att använda alla tillgängliga resurser och alla inkommande förfrågningar återanvänds utan att databasanslutningen avbryts och att du håller dig redo för en ny anslutning att använda.

pgbouncer är en lätt anslutningspoolare. pgBouncer körs som en enda process, och skapar inte en process per anslutning, som är beroende av biblioteket som heter libevent för anslutningspoolning.

pgbouncer-installationen på PostgreSQL 9.0 är mycket enkel, men det finns små förändringar med den senaste versionen du behöver för att skapa en manuell pg_auth-fil. pgbouncer använder filen pg_auth för användarautentisering. Tidigare version av PostgreSQL 9.0, du kan hitta filen pg_auth under $PGDATA/global/pg_auth, nu i den senaste versionen har den filen tagits bort och placerats i pg_catalog som tabell 'pg_auth'.

inställning av pgbouncer:

1. Ladda först ner libevent-biblioteket för pgbouncer.
Nedladdningslänk för libevent:
http://www.monkey.org/~provos/libevent-2.0.12-stable.tar.gz

tar -xvf libevent-2.0.12-stable.tar.gz

cd libevent-2.0.12-stable
./configure
make
make install

2. Ladda ner den senaste pgbouncer tar och konfigurera till din PostgreSQL 9.0.
http://pgfoundry.org/frs/download.php/2912/pgbouncer-1.4.tgz

tar -xvf pgbouncer-1.4

cd pgbouncer-1.4
./configure --prefix=/opt/PostgreSQL/9.0/bin
make
make install

3. Skapa en libevent-i386.conf-fil i /etc/ld.so.conf.d-katalogen

vi /etc/ld.so.conf.d/libevent-i386.conf

/usr/local/lib
:wq!

4. Kör ldconfig för att tillämpa nya ändringar.

#ldconfig

5. Ändra ägandet av pgbouncer-verktyget i PostgreSQL binär till postgres-användare.

chown -R postgres:postgres /opt/PostgreSQL/9.0/bin/bin/pgbouncer

6. Skapa filen pgbouncer_auth för användarautentisering.

7. Skapa pgbouncer.ini-fil med postgres användarbehörighet under katalogen /etc.

8. Starta pgbouncer

-bash-4.1$ ./pgbouncer -d /etc/pgbouncer.ini

2011-08-14 11:42:00.925 1949 LOG File descriptor limit: 1024 (H:1024), max_client_conn: 1000, max fds possible: 1010

9. Anslut till databaserna med pgbouncer

10. Få hjälp:Anslut till pgbouncer-databasen och få hjälp.

$ psql -p 6432 -U postgres pgbouncer

pgbouncer=# show help;

För bättre förståelse av pg_auth kan du hitta i länken nedan med "depesz".
http://www.depesz.com/index.php/2010/12/04/auto-refreshing-password-file-for- pgbouncer/

Skriv dina kommentarer som är mycket uppskattade.


  1. Hur Access 2019 fungerar och hur du arbetar med det

  2. Psychopg2-bilden hittades inte

  3. SQL Server 2017:Importera CSV-data från Linux till Salesforce med SSIS

  4. Hur COLLATION() fungerar i MariaDB