32.15. Переменные среды#
32.15. Переменные среды
Следующие переменные среды могут быть использованы для выбора значений параметров подключения по умолчанию, которые будут использоваться функциями PQconnectdb, PQsetdbLogin и PQsetdb, если никакое значение не указано явно в вызывающем коде. Это полезно для избегания жесткого кодирования информации о подключении к базе данных в простых клиентских приложениях, например.
PGHOSTведет себя так же, как параметр подключения host.PGHOSTADDRведет себя так же, как параметр подключения hostaddr. Его можно установить вместо или в дополнение кPGHOSTдля избежания издержек на DNS-поиск.PGPORTведет себя так же, как параметр подключения port.PGDATABASEведет себя так же, как параметр подключения dbname.PGUSERведет себя так же, как параметр подключения user.PGPASSWORDведет себя так же, как параметр подключения password. Использование этой переменной среды не рекомендуется по соображениям безопасности, так как некоторые операционные системы позволяют непривилегированным пользователям видеть переменные среды процесса через ps; вместо этого рассмотрите возможность использования файла паролей (см. Раздел 32.16).PGPASSFILEведет себя так же, как параметр подключения passfile.PGCHANNELBINDINGведет себя так же, как параметр подключения channel_binding.PGSERVICEведет себя так же, как параметр подключения service.PGSERVICEFILEопределяет имя файла службы подключения для каждого пользователя (см. Раздел 32.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.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.PGCONNECT_TIMEOUTведет себя так же, как параметр подключения connect_timeout.PGCLIENTENCODINGведет себя так же, как параметр подключения client_encoding.PGTARGETSESSIONATTRSведет себя так же, как параметр подключения target_session_attrs.
Следующие переменные среды могут быть использованы для указания поведения по умолчанию для каждой сессии Tantor SE. (См. также команды ALTER ROLE и ALTER DATABASE для установки поведения по умолчанию для каждого пользователя или базы данных отдельно).
PGDATESTYLEустанавливает стандартный стиль представления даты/времени. (ЭквивалентноSET datestyle TO ...).PGTZустанавливает временную зону по умолчанию. (ЭквивалентноSET timezone TO ...).PGGEQOустанавливает режим по умолчанию для генетического оптимизатора запросов. (ЭквивалентноSET geqo TO ...).
Обратитесь к команде SQL SET для получения информации о правильных значениях для этих переменных среды.
Следующие переменные среды определяют внутреннее поведение библиотеки libpq; они переопределяют значения по умолчанию, заданные при компиляции.