pgBouncer to jeden z najpopularniejszych poolerow polaczen dla PostgreSQL, a jego wlasna konsola CLI pozwala podejrzec i zarzadzac stanem polaczen bez restartu uslugi - pokazujemy najwazniejsze komendy.
Z tego artykułu dowiesz się:
- czym jest baza serwisowa w pgBouncerze,- jak sprawdzać ustawienia pgBouncera za pomocą jego CLI,- jak zmieniać ustawienia pgBouncera za pomocą jego CLI,- jak sprawdzać statystyki pgBouncera za pomocą jego CLI,- jak sprawdzać informacje o serwerach i klientach pgBouncera za pomocą jego CLI,- jak zablokować i odblokować połączenia poprzez pgBouncer za pomocą jego CLI.
PgBouncer umożliwia połączenie do bazy "serwisowej" pgbouncer przez psql, gdzie możemy znaleźć statystyki dotyczące użytkowania oraz zarządzać connection poolerem.
[Host 4: pgbouncer]
psql -p 6432 -U postgres pgbouncer
Zapytani o hasło podajemy to, którego hash zapisaliśmy w pliku "/etc/pgbouncer/userlist.txt".
Poniższe polecenia działają tylko, jeżeli jesteśmy podłączeni do wirtualnej instancji "pgbouncer".
Informacje o kolejkach, liczbie aktywnych sesji i połączeń w kolejce:
show pools;
Aktualne ustawienia pgbouncera, zmiana oraz przeładowanie ustawień
show config;
set parametr = wartość;
RELOAD;
Inne przydatne widoki to:
show stats; - statystyki od startu procesu
show totals; - statystyki od czasu pierwszego startu
show servers; - informacje o serwerach
show clients; - informacje o klientach
Mamy również możliwość zatrzymania kolejkowania połączeń, "PAUSE;" pgbouncer zacznie odrzucać nowe połączenia, rozłączy wszystkie oczekujące połączenia, pozwoli ukończyć aktywne zapytania / transakcje, a po zakończeniu natychmiast zamknie połączenie z postgresem. Przydatna opcja przed kontrolowanym restartem, jeżeli nie chcemy przerwać żadnej transakcji. Nowe połączenia będą niemożliwe do czasu wykonania "RESUME;"
DISABLE db; / ENABLE db; - odrzucanie/wznowienie nowych połączeń dla danej bazy
RECONNECT db; - zamyka wszystkie aktywne połączenia z postgresem i pozwala na natychmiastowe otwarcie nowych. Przydatne, jeżeli zmienialiśmy parametry postgresa, które są aktywowane po ponownym połączeniu, np. work_mem.
PgBouncer umożliwia wykonanie restartu "online", ale tylko na linuxie i jeżeli nie korzystamy z TLS. Poprzez uruchomienie pgbounera z opcją -R -d wystartujemy nowy proces, który przejmie wszystkie aktywne połączenia, po czym zatrzyma stary proces pgbouncera. Możemy w ten sposób zmieniać parametry wymagające restartu lub wykonać upgrade pgbounera.
Top comments (0)