0
点赞
收藏
分享

微信扫一扫

修改postgresql配置文件路径的方式

核心配置文件说明

在PostgreSQL中有如下几个核心配置文件,这些配置文件默认都放在数据目录中:

  • postgresql.conf 这个是PG最主要的一个配置文件,记录了PG中的非默认参数
  • postgresql.auto.conf 该配置文件的优先级别要高于postgresql.conf文件,一般情况下不能手动的修改该配置文件,当通过alter system修改系统参数的时候就会将该修改记录到postgresql.auto.conf文件中,个人认为因为alter system修改的参数只会记录到postgresql.auto.conf文件中的这个特性,如果使用alter system去修改参数会导致参数管理的混乱,建议对参数的修改统一通过配置postgresql.conf文件完成
  • pg_hba.conf文件用于指定基于主机身份认证的方式

修改配置文件的方式

假设存在一个需求,将postgresql的配置文件从默认的位置修改到/home/postgresql下。这个时候pg_ctl命令下的-D 参数就不应该指向数据目录的路径,而应该指向配置文件所在的路径,这里所指的配置文件至少应该包含postgresql.conf和pg_hba.conf文件。与此同时,还需要在postgresql.conf中显示的指定data_directory参数,以便能正确的找到数据文件目录。

a) cp配置文件到/home/postgresql.conf

cp /pg_data/db1/pg_hba.conf ~
cp postgresql.conf_bk ~/postgresql.conf

b) 配置参数data_directory路径

新增如下参数:
data_directory = '/pg_data/db1'

c)启动数据库

/usr/local/pg14.2/bin/pg_ctl -D /home/postgres/ -l /pg_data/log/db1/logfile start

当执行-D参数的时候PostgreSQL回去指定的目录读取必要的conf文件,然后在postgresql.conf文件中获取data_directory的路径,进而启动数据库。


​​https://www.postgresql.org/docs/current/runtime-config-file-locations.html​​

举报

相关推荐

0 条评论