it-swarm.com.de

Abfrage eines Parameters (postgresql.conf-Einstellung) wie "max_connections"

Weiß jemand, ob es überhaupt möglich ist (und wie, wenn ja), eine Datenbankservereinstellung in PostgreSQL (9.1) abzufragen?

Ich muss das max_connections (maximale Anzahl offener DB-Verbindungen).

101
Greg Kramida

Kann so einfach sein wie:

SHOW max_connections;

Dies gibt die aktuell wirksame Einstellung zurück. Beachten Sie, dass es von der Einstellung in postgresql.conf Abweichen kann, da es in PostgreSQL verschiedene Möglichkeiten gibt, Laufzeitparameter festzulegen . So setzen Sie die "ursprüngliche" Einstellung von postgresql.conf In Ihrer aktuellen Sitzung zurück:

RESET max_connections;

Dies gilt jedoch nicht für diese spezielle Einstellung. Pro Dokumentation :

Dieser Parameter kann nur beim Serverstart gesetzt werden.

So zeigen Sie alle Einstellungen an:

SHOW ALL;

Mehr zum Befehl SHOW im Handbuch .
Wenn Sie weitere Details benötigen oder die Suche in eine Standardabfrage SELECT integrieren möchten, gibt es auch Folgendes:

SELECT * FROM pg_settings;

Gibt das gleiche Ergebnis wie SHOW ALL Zurück, jedoch mit zusätzlichen Informationen pro Einstellung. Für Ihre ursprüngliche Anfrage:

SELECT *
FROM   pg_settings
WHERE  name = 'max_connections';

Es gibt auch das funktionale Äquivalent current_setting () , das in DML-Anweisungen verschachtelt sein kann.

SELECT current_setting('max_connections');

Verbunden:

187