PostgreSQL 8.2.3 中文文档
后退快退章17. 服务器配置快进前进

17.2. 文件位置

除了已经提到过的 postgresql.conf 文件之外,PostgreSQL 还使用另外两个手工编辑的配置文件,它们控制客户端认证(在章20里讨论)。缺省时,所有三个配置文件都存放在数据库集群的数据目录里。本节描述的选项允许配置文件放在别的地方。这么做可以简化管理,特别是如果配置文件独立放置,通常可以很容易保证它得到恰当的备份。

data_directory (string)

声明为数据存储使用的目录。这个选项只能在服务器启动的时候设置。

config_file (string)

声明主服务器配置文件(通常叫 postgresql.conf)。这个选项只能在 postgres 命令行上设置。

hba_file (string)

声明基于主机的认证(HBA)配置文件(通常叫 pg_hba.conf)。这个选项只能在服务器启动的时候设置。

ident_file (string)

声明用于 ident 认证的配置文件(通常叫 pg_ident.conf)。这个选项只能在服务器启动的时候设置。

external_pid_file (string)

声明可被服务器管理程序使用的额外 PID 文件。这个选项只能在服务器启动的时候设置。

缺省安装不会明确设置这些参数。而是用命令行参数 -D 或者环境变量 PGDATA 声明数据目录,并将上述配置文件都放在数据目录里。

如果你想把配置文件放在别的地方,那么 postgres 的命令行参数 -D 或者环境变量 PGDATA 必须指向包含配置文件的目录,而 postgresql.conf 里(或者命令行上)的 data_directory 选项必须设置为数据目录实际存放的地方。请注意,data_directory 将覆盖 -DPGDATA 指定的数据目录,但是不覆盖配置文件的目录。

如果你愿意,可以使用选项 config_file, hba_file, ident_file 分别声明配置文件的路径。config_file 只能在 postgres 命令行上设置,但是其它的可以在主配置文件里设置。如果明确设置了所有三个选项和 data_directory ,那么就没必要声明 -DPGDATA

在设置任何这些选项的时候,相对路径将被解释为相对于 postgres 启动时候的路径。


后退首页前进
设置参数上一级连接和认证