受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
开发版本: devel

32.15. 环境变量 #

以下环境变量可用于选择默认连接参数值,这些值将被PQconnectdbPQsetdbLoginPQsetdb使用,如果调用代码没有直接指定值。这些对于避免将数据库连接信息硬编码到简单的客户端应用程序中非常有用,例如。

  • PGHOST的行为与host连接参数相同。

  • PGHOSTADDR的行为与hostaddr连接参数相同。 这可以替代或者与PGHOST一起设置,以避免DNS查找开销。

  • PGPORT的行为与port连接参数相同。

  • PGDATABASE的行为与dbname连接参数相同。

  • PGUSER的行为与user连接参数相同。

  • PGPASSWORD的行为与password连接参数相同。 出于安全原因,不建议使用此环境变量,因为一些操作系统允许非root用户通过ps查看进程环境变量; 而应考虑使用密码文件(参见Section 32.16)。

  • PGPASSFILE的行为与passfile连接参数相同。

  • PGCHANNELBINDING的行为与channel_binding连接参数相同。

  • PGSERVICE的行为与service连接参数相同。

  • PGSERVICEFILE指定每个用户的连接服务文件的名称 (参见Section 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连接参数相同。

  • 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连接参数相同。

下面的环境变量可用来为每一个PostgreSQL会话指定默认行为(为每一个用户或每一个数据库设置默认行为的方法还可见ALTER ROLEALTER DATABASE命令)。

  • PGDATESTYLE设置日期/时间表示的默认风格(等同于SET datestyle TO ...)。

  • PGTZ设置默认的时区(等同于SET timezone TO ...)。

  • PGGEQO为遗传查询优化器设置默认模式(等同于SET geqo TO ...)。

这些环境变量的正确值可参考SQL 命令 SET

下面的环境变量决定libpq的内部行为,它们会覆盖编译在程序中的默认值。

  • PGSYSCONFDIR设置包含pg_service.conf文件以及未来版本中可能出现的其他系统范围配置文件的目录。

  • PGLOCALEDIR设置包含用于消息本地化的locale文件的目录。

提交更正

如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。