PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 13.18 » Interfaces client » libpq -- Bibliothèque C » Variables d'environnement

33.14. Variables d'environnement

Les variables d'environnement suivantes peuvent être utilisées pour sélectionner des valeurs par défaut pour les paramètres de connexion, valeurs qui seront utilisées par PQconnectdb, PQsetdbLogin et PQsetdb si aucune valeur n'est directement précisée par le code appelant. Elles sont utiles pour éviter de coder en dur les informations de connexion à la base de données dans les applications clients, par exemple.

  • PGHOST se comporte de la même façon que le paramètre de configuration host.

  • PGHOSTADDR se comporte de la même façon que le paramètre de configuration hostaddr. Elle peut être initialisée à la place ou en plus de PGHOST pour éviter la charge supplémentaire d'une résolution DNS.

  • PGPORT se comporte de la même façon que le paramètre de configuration port.

  • PGDATABASE se comporte de la même façon que le paramètre de configuration dbname.

  • PGUSER se comporte de la même façon que le paramètre de configuration user.

  • PGPASSWORD se comporte de la même façon que le paramètre de configuration password. L'utilisation de cette variable d'environnement n'est pas recommandée pour des raisons de sécurité, car certains systèmes d'exploitation autorisent les utilisateurs autres que root à voir les variables d'environnement du processus via ps) ; à la place, envisagez l'utilisation d'un fichier de mots de passe (voir la Section 33.15.

  • PGPASSFILE se comporte de la même façon que le paramètre de connexion passfile.

  • PGCHANNELBINDING se comporte de la même façon que le paramètre de connexion channel_binding.

  • PGSERVICE se comporte de la même façon que le paramètre de configuration service.

  • PGSERVICEFILE indique le nom du fichier service de connexion par utilisateur (voir Section 33.16). Il vaut par défaut ~/.pg_service.conf, ou %APPDATA%\postgresql\.pg_service.conf sur Microsoft Windows.

  • PGOPTIONS se comporte de la même façon que le paramètre de configuration options.

  • PGAPPNAME se comporte de la même façon que le paramètre de connexion application_name.

  • PGSSLMODE se comporte de la même façon que le paramètre de configuration sslmode.

  • PGREQUIRESSL se comporte de la même façon que le paramètre de configuration requiressl. Cette variable d'environnement est obsolète, remplacée par la variable PGSSLMODE  si les deux variables sont initialisées, PGREQUIRESSL est ignoré.

  • PGSSLCOMPRESSION se comporte de la même façon que le paramètre de connexion sslcompression.

  • PGSSLCERT se comporte de la même façon que le paramètre de configuration sslcert.

  • PGSSLKEY se comporte de la même façon que le paramètre de configuration sslkey.

  • PGSSLROOTCERT se comporte de la même façon que le paramètre de configuration sslrootcert.

  • PGSSLCRL se comporte de la même façon que le paramètre de configuration sslcrl.

  • PGREQUIREPEER se comporte de la même façon que le paramètre de connexion requirepeer.

  • PGSSLMINPROTOCOLVERSION se comporte de la même façon que le paramètre de connexion ssl_min_protocol_version.

  • PGSSLMAXPROTOCOLVERSION se comporte de la même façon que le paramètre de connexion ssl_max_protocol_version.

  • PGKRBSRVNAME se comporte de la même façon que le paramètre de configuration krbsrvname.

  • PGGSSENCMODE se comporte de la même façon que le paramètre de connexion gssencmode.

  • PGGSSLIB se comporte de la même façon que le paramètre de configuration gsslib.

  • PGCONNECT_TIMEOUT se comporte de la même façon que le paramètre de configuration connect_timeout.

  • PGCLIENTENCODING se comporte de la même façon que le paramètre de connexion client_encoding.

  • PGTARGETSESSIONATTRS se comporte de la même façon que le paramètre de connexion target_session_attrs.

Les variables d'environnement peuvent être utilisées pour spécifier le comportement par défaut de chaque session PostgreSQL (voir aussi les commandes ALTER ROLE et ALTER DATABASE pour modifier le comportement par défaut par utilisateur ou par base de données).

  • PGDATESTYLE initialise le style par défaut de la représentation de la date et de l'heure (équivalent à SET datestyle TO ...).

  • PGTZ initialise le fuseau horaire par défaut (équivalent à SET timezone TO ...).

  • PGGEQO initialise le mode par défaut pour l'optimiseur génétique de requêtes (équivalent à SET geqo TO ...).

Référez-vous à la commande SQL SET pour plus d'informations sur des valeurs correctes pour ces variables d'environnement.

Les variables d'environnement suivantes déterminent le comportement interne de libpq ; elles surchargent les valeurs par défaut issues de la compilation.

  • PGSYSCONFDIR configure le répertoire contenant le fichier pg_service.conf et, peut-être dans une future version, d'autres fichiers de configuration globaux au système.

  • PGLOCALEDIR configure le répertoire contenant les fichiers locale pour l'internationalisation des messages.