32.16. Файл соединений служб

Файл соединений служб позволяет связать параметры соединений libpq с одним именем службы. Затем это имя службы можно задать при подключении через libpq и будут применены все связанные с ним параметры. Это позволяет модифицировать параметры соединений, обходясь без перекомпиляции приложения libpq. Имя службы можно также задать в переменной окружения PGSERVICE.

Файл соединений служб может быть личным файлом пользователя с путём ~/.pg_service.conf или задаваться переменной окружения PGSERVICEFILE, либо это может быть системный файл с путём `pg_config --sysconfdir`/pg_service.conf или в каталоге, задаваемом переменной окружения PGSYSCONFDIR. Если для одного имени службы существует определение и в системном файле, и в файле пользователя, определение пользователя имеет приоритет.

В этом файле используется формат «INI-файлов», в котором имя раздела задаёт имя службы, а параметры внутри — параметры соединения; их список приведён в Подразделе 32.1.2. Например:

# комментарий
[mydb]
host=somehost
port=5433
user=admin

Пример такого файла можно найти в share/pg_service.conf.sample.

Если в одном разделе файла службы присутствуют несколько указаний host, они воспринимаются как определения альтернативных серверов для отработки отказа или распределения нагрузки (см. описание параметра host в строке подключения).

Для всех других параметров первое значение имеет приоритет перед последующими.

Параметры, заданные в строке подключения, включая параметры служб, имеют приоритет перед значениями, заданными в файле соединений служб.