Le fichier des services de connexion permet d'associer des paramètres de
connexion à un nom de service unique. Ce nom de service peut ensuite être
spécifié dans une chaîne de connexion libpq et les paramétrages associés seront utilisés.
On peut donc modifier les paramètres de connexion sans avoir à recompiler
l'application utilisant la libpq. Le nom de service peut aussi être spécifié en utilisant
la variable d'environnement PGSERVICE
.
Les noms de service peuvent être définis soit dans le fichier service par
utilisateur soit dans un fichier global du système. Si le même nom de service
existe dans le fichier utilisateur et le fichier global, le fichier
utilisateur a priorité. Par défaut, le fichier service par utilisateur est
nommé ~/.pg_service.conf
. Sur Microsoft Windows, il est
nommé %APPDATA%\postgresql\.pg_service.conf
(où
%APPDATA%
fait référence au sous-répertoire Application
Data dans le profile utilisateur). Un nom de fichier différent peut être
indiqué en configurant la variable d'environnement
PGSERVICEFILE
. Le fichier global du système est nommé
pg_service.conf
. Par défaut, il est recherché dans le
répertoire etc
de l'installation de
PostgreSQL (utilisez pg_config
--sysconfdir
pour identifier précisément ce répertoire). Un autre
répertoire, mais pas un nom de fichier différent, peut être précisé en
configurant la variable d'environnement PGSYSCONFDIR
.
Le fichier de service utilise le format des « fichiers INI » où le nom de section et les paramètres sont des paramètres de connexion ; voir Section 34.1.2 pour une liste. Par exemple :
# comment [mabase] host=unhote port=5433 user=admin
Un fichier d'exemple est fourni dans l'installation
PostgreSQL sous le nom de
share/pg_service.conf.sample
.
Les paramètres de connexion obtenus à partir d'un fichier de service sont
combinés avec les paramètres obtenus d'autres sources. Une configuration d'un
fichier de service surcharge la variable d'environnement correspondante et, à
son tour, peut être surchargé par une valeur donnée directement dans la
chaîne de connexion. Par exemple, en utilisant le fichier de service
ci-dessus, une chaîne de connexion service=mabase
port=5434
utilisera l'hôte unhote
, le port
5434
, l'utilisateur admin
, et les
autres paramètres tels qu'ils sont configurés par les variables
d'environnement ou les valeurs par défaut internes.