以下环境变量可用于选择默认连接参数值,这些值将被 PQconnectdb
、PQsetdbLogin
和 PQsetdb
使用,前提是调用代码没有直接指定值。例如,这对于避免在简单的客户端应用程序中硬编码数据库连接信息很有用。
PGHOST
的行为与 host 连接参数相同。
PGSSLNEGOTIATION
的行为与 sslnegotiation 连接参数相同。
PGHOSTADDR
的行为与 hostaddr 连接参数相同。可以设置此变量来代替或补充 PGHOST
,以避免 DNS 查找开销。
PGPORT
的行为与 port 连接参数相同。
PGDATABASE
的行为与 dbname 连接参数相同。
PGUSER
的行为与 user 连接参数相同。
PGPASSWORD
的行为与 password 连接参数相同。出于安全原因,不建议使用此环境变量,因为某些操作系统允许非 root 用户通过 ps 查看进程环境变量;而是考虑使用密码文件(请参阅 第 32.16 节)。
PGPASSFILE
的行为与 passfile 连接参数相同。
PGREQUIREAUTH
的行为与 require_auth 连接参数相同。
PGCHANNELBINDING
的行为与 channel_binding 连接参数相同。
PGSERVICE
的行为与 service 连接参数相同。
PGSERVICEFILE
指定每个用户的连接服务文件的名称(请参阅 第 32.17 节)。默认为 ~/.pg_service.conf
,或 Microsoft Windows 上的 %APPDATA%\postgresql\.pg_service.conf
。
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 连接参数相同。
以下环境变量可用于为每个 PostgreSQL 会话指定默认行为。(另请参阅 ALTER ROLE 和 ALTER DATABASE 命令,了解如何按用户或按数据库设置默认行为。)
请参阅SQL命令 SET,以获取有关这些环境变量的正确值的详细信息。
以下环境变量确定 libpq 的内部行为;它们会覆盖编译时默认值。
如果您在文档中发现任何不正确的内容,与您对特定功能的体验不符,或者需要进一步澄清,请使用 此表单 报告文档问题。