31.15. Переменные среды#

31.15. Переменные среды

31.15. Переменные среды #

Следующие переменные среды могут быть использованы для выбора значений параметров подключения по умолчанию, которые будут использоваться функциями PQconnectdb, PQsetdbLogin и PQsetdb, если никакое значение не указано явно в вызывающем коде. Это полезно для избегания жесткого кодирования информации о подключении к базе данных в простых клиентских приложениях, например.

  • PGHOST ведет себя так же, как параметр подключения host.

  • PGHOSTADDR ведет себя так же, как параметр подключения hostaddr. Его можно установить вместо или в дополнение к PGHOST для избежания издержек на DNS-поиск.

  • PGPORT ведет себя так же, как параметр подключения port.

  • PGDATABASE ведет себя так же, как параметр подключения dbname.

  • PGUSER ведет себя так же, как параметр подключения user.

  • PGPASSWORD ведет себя так же, как параметр подключения password. Использование этой переменной среды не рекомендуется по соображениям безопасности, так как некоторые операционные системы позволяют непривилегированным пользователям видеть переменные среды процесса через ps; вместо этого рассмотрите возможность использования файла паролей (см. Раздел 31.16).

  • PGPASSFILE ведет себя так же, как параметр подключения passfile.

  • PGREQUIREAUTH ведет себя так же, как параметр подключения require_auth.

  • PGCHANNELBINDING ведет себя так же, как параметр подключения channel_binding.

  • PGSERVICE ведет себя так же, как параметр подключения service.

  • PGSERVICEFILE определяет имя файла службы подключения для каждого пользователя (см. Раздел 31.17). По умолчанию используется файл ~/.pg_service.conf, или %APPDATA%\postgresql\.pg_service.conf в операционной системе Microsoft Windows.

  • PGOPTIONS ведет себя так же, как параметр подключения options.

  • PGAPPNAME ведет себя так же, как параметр подключения application_name.

  • PGSSLMODE ведет себя так же, как параметр подключения sslmode.

  • PGREQUIRESSL ведет себя так же, как параметр подключения requiressl. Эта переменная среды устарела в пользу переменной PGSSLMODE; установка обеих переменных подавляет действие этой переменной.

  • PGSSLCOMPRESSION ведет себя так же, как параметр подключения sslcompression.

  • PGSSLCERT ведет себя так же, как параметр подключения sslcert.

  • PGSSLKEY ведет себя так же, как параметр подключения sslkey.

  • PGSSLCERTMODE ведет себя так же, как параметр подключения sslcertmode.

  • PGSSLROOTCERT ведет себя так же, как параметр подключения sslrootcert.

  • PGSSLCRL ведет себя так же, как параметр подключения sslcrl.

  • PGSSLCRLDIR ведет себя так же, как параметр подключения sslcrldir.

  • PGSSLSNI ведет себя так же, как параметр подключения sslsni.

  • PGREQUIREPEER ведет себя так же, как параметр подключения requirepeer.

  • PGSSLMINPROTOCOLVERSION ведет себя так же, как параметр подключения ssl_min_protocol_version.

  • PGSSLMAXPROTOCOLVERSION ведет себя так же, как параметр подключения ssl_max_protocol_version.

  • PGGSSENCMODE ведет себя так же, как параметр подключения gssencmode.

  • PGKRBSRVNAME ведет себя так же, как параметр подключения krbsrvname.

  • PGGSSLIB ведет себя так же, как параметр подключения gsslib.

  • PGGSSDELEGATION ведет себя так же, как параметр подключения gssdelegation.

  • PGCONNECT_TIMEOUT ведет себя так же, как параметр подключения connect_timeout.

  • PGCLIENTENCODING ведет себя так же, как параметр подключения client_encoding.

  • PGTARGETSESSIONATTRS ведет себя так же, как параметр подключения target_session_attrs.

  • PGLOADBALANCEHOSTS ведет себя так же, как параметр подключения load_balance_hosts.

Следующие переменные среды могут быть использованы для указания поведения по умолчанию для каждой сессии Tantor BE. (См. также команды ALTER ROLE и ALTER DATABASE для установки поведения по умолчанию для каждого пользователя или базы данных отдельно).

  • PGDATESTYLE устанавливает стандартный стиль представления даты/времени. (Эквивалентно SET datestyle TO ...).

  • PGTZ устанавливает временную зону по умолчанию. (Эквивалентно SET timezone TO ...).

  • PGGEQO устанавливает режим по умолчанию для генетического оптимизатора запросов. (Эквивалентно SET geqo TO ...).

Обратитесь к команде SQL SET для получения информации о правильных значениях для этих переменных среды.

Следующие переменные среды определяют внутреннее поведение библиотеки libpq; они переопределяют значения по умолчанию, заданные при компиляции.

  • PGSYSCONFDIR устанавливает каталог, содержащий файл pg_service.conf и, возможно, в будущих версиях другие файлы системной конфигурации.

  • PGLOCALEDIR устанавливает каталог, содержащий файлы locale для локализации сообщений.