Zapytaj o parametr (ustawienie postgresql.conf), np. „Max_connections”

124

Czy ktoś wie, czy jest w ogóle możliwe (i jak, jeśli tak) zapytać o ustawienie serwera bazy danych w PostgreSQL (9.1)?

Muszę sprawdzić ustawienie max_connections(maksymalna liczba otwartych połączeń db).

Greg Kramida
źródło

Odpowiedzi:

228

Możesz użyć SHOW:

SHOW max_connections;

Spowoduje to zwrócenie aktualnie obowiązującego ustawienia. Należy pamiętać, że może się to różnić od ustawienia w, postgresql.confponieważ istnieje wiele sposobów ustawiania parametrów czasu wykonywania w PostgreSQL . Aby zresetować „oryginalne” ustawienie postgresql.confw bieżącej sesji:

RESET max_connections;

Jednak nie dotyczy tego konkretnego ustawienia. Instrukcja:

Ten parametr można ustawić tylko przy starcie serwera.

Aby zobaczyć wszystkie ustawienia:

SHOW ALL;

Jest też pg_settings:

Widok pg_settingszapewnia dostęp do parametrów roboczych serwera. Jest to zasadniczo alternatywny interfejs dla poleceń SHOWi SET. Zapewnia również dostęp do niektórych faktów dotyczących każdego parametru, które nie są bezpośrednio dostępne SHOW, takich jak wartości minimalne i maksymalne.

Na pierwotną prośbę:

SELECT *
FROM   pg_settings
WHERE  name = 'max_connections';

Wreszcie jest current_setting(), które można zagnieżdżać w instrukcjach DML:

SELECT current_setting('max_connections');

Związane z:

Erwin Brandstetter
źródło