31.14. Переменные окружения
Воспользовавшись следующими переменными окружения, можно задать значения параметров соединения по умолчанию, которые будут использоваться функциями PQconnectdb, PQsetdbLogin и PQsetdb, если никакое значение не будет задано вызывающим кодом. В частности, используя их, можно обойтись без жёсткого задания параметров соединения в простых клиентских приложениях. 
- PGHOSTдействует так же, как параметр соединения host.
- PGHOSTADDRдействует так же, как параметр соединения hostaddr. Эту переменную можно задать вместо или вместе с- PGHOSTдля предотвращения поиска адреса в DNS.
- PGPORTдействует так же, как параметр соединения port.
- PGDATABASEдействует так же, как параметр соединения dbname.
- PGUSERдействует так же, как параметр соединения user.
- PGPASSWORDдействует так же, как параметр соединения password. Использовать эту переменную окружения не рекомендуется по соображениям безопасности, так как в некоторых операционных системах непривилегированные пользователи могут видеть переменные окружения процессов в выводе ps; вместо этого лучше использовать файл паролей (см. Раздел 31.15).
- PGPASSFILEдействует так же, как параметр соединения passfile.
- PGSERVICEдействует так же, как параметр соединения service.
- PGSERVICEFILEзадаёт имя личного файла пользователя с параметрами подключения к службам. По умолчанию применяется имя файла- ~/.pg_service.conf(см. Раздел 31.16).
- PGOPTIONSдействует так же, как параметр соединения options.
- PGAPPNAMEдействует так же, как параметр соединения application_name.
- PGSSLMODEдействует так же, как параметр соединения sslmode.
- PGREQUIRESSLдействует так же, как параметр соединения requiressl. Эта переменная окружения утратила актуальность с появлением переменной- PGSSLMODE; если установить обе переменные, значение данной не возымеет эффекта.
- PGSSLCOMPRESSIONдействует так же, как параметр соединения sslcompression.
- PGSSLCERTдействует так же, как параметр соединения sslcert.
- PGSSLKEYдействует так же, как параметр соединения sslkey.
- PGSSLROOTCERTдействует так же, как параметр соединения sslrootcert.
- PGSSLCRLдействует так же, как параметр соединения sslcrl.
- PGREQUIREPEERдействует так же, как параметр соединения requirepeer.
- PGKRBSRVNAMEдействует так же, как параметр соединения krbsrvname.
- PGGSSLIBдействует так же, как параметр соединения gsslib.
- PGCONNECT_TIMEOUTдействует так же, как параметр соединения connect_timeout.
- PGCLIENTENCODINGдействует так же, как параметр соединения client_encoding.
- PGTARGETSESSIONATTRSдействует так же, как параметр соединения target_session_attrs.
Следующие переменные окружения позволяют задать поведение по умолчанию для каждого отдельного сеанса Postgres Pro. (См. также описание команд ALTER ROLE и ALTER DATABASE, позволяющих установить поведение по умолчанию для отдельного пользователя или отдельной базы.)
- PGDATESTYLEустанавливает стиль представления даты/времени по умолчанию. (Равносильно- SET datestyle TO ....)
- PGTZустанавливает часовой пояс по умолчанию. (Равносильно- SET timezone TO ....)
- PGGEQOустанавливает режим по умолчанию для генетического оптимизатора запросов. (Равносильно- SET geqo TO ....)
Информацию о корректных значениях этих переменных окружения можно найти в описании SQL-команды SET.
Следующие переменные среды определяют внутреннее поведение libpq; они переопределяют встроенные значения.