web-dev-qa-db-fra.com

Comment éditer `postgresql.conf` avec pgAdmin 4?

Même question que celle-ci: Comment modifier postgresql.conf avec pgAdmin 3? mais mis à jour pour la toute nouvelle (réécriture totale) pgAdmin 4 .

➥ Comment éditer les fichiers de configuration avec l'application pgAdmin 4 ?

  • postgresql.conf
  • pg_hba.conf

J'ai ajouté l'extension adminpack comme discutée ici . Et j'ai redémarré pgAdmin 4 . Pourtant, je ne peux identifier aucun élément de menu ou autre élément d'interface pour modifier ces fichiers.

2
Basil Bourque

Solution de contournement: ALTER SYSTEM

Comme solution de contournement partielle, Postgres 9.4 a ajouté une fonctionnalité pour définir dynamiquement les propriétés vues dans postgresql.conf: ALTER SYSTEM commandes.

ALTER SYSTEM SET configuration_parameter { TO | = } { value | 'value' | DEFAULT }

ALTER SYSTEM RESET configuration_parameter
ALTER SYSTEM RESET ALL  -- Clears all the settings set via `ALTER SYSTEM SET`. 

Cela constitue une alternative pratique à la modification manuelle du postgresql.conf fichier.

Exemple:

ALTER SYSTEM SET wal_level = replica;

Comment ça marche?

  • UNE postgresql.auto.conf le fichier est écrit par le ALTER SYSTEM SET commande.
  • Ce fichier et postgresql.conf sont lus tous les deux, vous pouvez donc combiner ces approches si vous le souhaitez. Le fichier auto l'emporte sur le fichier modifié manuellement pour les propriétés coïncidentes.
  • Pour la fiabilité, un postgresql.auto.conf.temp le fichier est créé pour revenir à l'état d'origine en cas d'erreur.

Mises en garde:

  • Les paramètres ne prennent pas effet immédiatement. Lire le doc .
  • Doit être superutilisateur pour s'exécuter.
  • Ne peut pas être appelé dans un bloc ou une fonction de transaction.
  • Impossible de définir data_directory .
  • De toute évidence, une mauvaise utilisation peut être dangereuse pour votre système de base de données, alors faites attention.

Astuce: Pour lire la valeur des paramètres, consultez cette question, Recherchez toutes les valeurs actuelles des paramètres de configuration Postgres?

Solution: utilisez l'éditeur de ligne de commande en tant qu'utilisateur postgres

Vous pouvez exécuter un simple éditeur de texte comme nano à partir de commande- line exécuté avec les privilèges de l'utilisateur postgres. Ouvrez le pg_hba.conf fichier, modifier et enregistrer.

Par exemple, sur un système d'exploitation orienté nix / POSIX tel que BSD ou macOS :

Sudo -u postgres nano /Library/PostgreSQL/11/data/pg_hba.conf

Pour plus d'informations, voir la question, Changer d'utilisateur en utilisateur "postgres" sur macOS entraîne une erreur "su: Désolé"

4
Basil Bourque