DBAtlas · Atlas d'exploitation des bases de données

Afficher les paramètres en attente de redémarrage et les erreurs des fichiers de configuration

PostgreSQLParamètres

Commande

-- 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';

Ce que fait la commande

Affiche les paramètres modifiés dans les fichiers mais en attente d'un redémarrage, les lignes des fichiers de configuration non appliquées ou en erreur, et de quel fichier/quelle ligne provient la valeur effective d'un paramètre.

Quand l'utiliser

Pour vérifier après un ALTER SYSTEM ou une modification de postgresql.conf que le reload a eu l'effet attendu, et pour lister les changements en attente avant un redémarrage planifié.

Attention

pg_file_settings lit les fichiers tels qu'ils sont maintenant ; si un paramètre est défini à plusieurs endroits, seul le dernier a applied = true (postgresql.auto.conf est lu en dernier, donc ALTER SYSTEM l'emporte toujours). Une ligne avec applied = false et un error vide est masquée par une autre définition ; ce n'est pas une erreur. Un paramètre qui exige un redémarrage affiche l'erreur 'setting could not be applied'. Un fichier erroné peut être appliqué partiellement au reload ; après un changement, exécutez pg_reload_conf() puis vérifiez ces requêtes et le journal du serveur. Ne modifiez pas postgresql.auto.conf à la main ; utilisez ALTER SYSTEM RESET.

Ouvrir dans DBAtlas →

Voir aussi