DBAtlas · Atlas für Datenbankbetrieb

Auf Neustart wartende Parameter und Fehler in Konfigurationsdateien anzeigen

PostgreSQLParameter

Befehl

-- Parameters changed but not effective until a restart
SELECT name, setting, unit, context, source, sourcefile, pending_restart
FROM pg_settings
WHERE pending_restart;

-- Lines in configuration files that were not applied or have errors
SELECT sourcefile, sourceline, seqno, name, setting, applied, error
FROM pg_file_settings
WHERE NOT applied OR error IS NOT NULL
ORDER BY sourcefile, sourceline;

-- Where does a parameter's effective value come from?
SELECT name, setting, source, sourcefile, sourceline
FROM pg_settings
WHERE name = 'work_mem';

Was es tut

Zeigt Parameter, die in den Dateien geändert wurden, aber auf einen Neustart warten, nicht angewendete oder fehlerhafte Zeilen der Konfigurationsdateien und aus welcher Datei/Zeile der wirksame Wert eines Parameters stammt.

Wann einsetzen

Um nach einer Änderung per ALTER SYSTEM oder in postgresql.conf zu prüfen, dass der Reload die erwartete Wirkung hatte, und um vor einem geplanten Neustart ausstehende Änderungen aufzulisten.

Vorsicht

pg_file_settings liest die Dateien im aktuellen Zustand; ist ein Parameter an mehreren Stellen definiert, hat nur die letzte Definition applied = true (postgresql.auto.conf wird zuletzt gelesen, daher gewinnt ALTER SYSTEM immer). Eine Zeile mit applied = false und leerem error wird von einer anderen Definition überdeckt; das ist kein Fehler. Ein Parameter, der einen Neustart braucht, zeigt den error 'setting could not be applied'. Eine fehlerhafte Datei wird beim Reload eventuell teilweise angewendet; nach einer Änderung pg_reload_conf() ausführen und dann diese Abfragen und das Server-Log prüfen. Bearbeite postgresql.auto.conf nicht von Hand; nutze ALTER SYSTEM RESET.

In DBAtlas öffnen →

Verwandte Einträge