PostgreSQL配置信息查看修改

通过配置文件

postgresql配置文件在$PGDATA 数据目录下的postgresql.conf中

主服务进程接收到SIGHUP信号后会重新读取配置文件。可以通过命令pg_ctl reload 或者 SQL pg_reload_conf()触发信息。 主服务进程会广播信号给所有当前运行的服务进程中。所以存在的会话也会采用新的值。

打开postgresql.conf修改配置min_wal_size = 100MB并执行如下命令

zhangliang[postgres@localhost /usr/local/pgsql/data]$ pg_ctl reload
server signaled
2023-04-17 16:42:19.875 CST [112069] LOG:  received SIGHUP, reloading configuration files
zhangliang[postgres@localhost /usr/local/pgsql/data]$ 2023-04-17 16:42:19.876 CST [112069] LOG:  parameter "min_wal_size" changed to "100MB"

在psql查看生效情况

postgres=# show min_wal_size;
 min_wal_size 
--------------
 100MB
(1 row)

通过SQL命令

PostgreSQL提供了三个命令修改配置,新会话生效

  • ALTER SYSTEM 系统级别 eg: alter system set work_mem='8MB';
  • ALTER DATABASE 数据库级别 eg: alter database <数据库名> set work_mem='16MB';
  • ALTER ROLE 用户级别 eg: alter role <用户名> set work_mem='8MB';

查看配置SQL命令

  • show 参数名 可以检查当前参数值
  • select * from current_setting('参数名');
  • select * from pg_settings

修改配置SQL命令

  • set 参数名=参数值
  • update pg_settings set setting=<参数值> where name = '<参数名>'

通过shell命令

  • 数据库启动时通过-c命令 ,如下:
    postgres -c log_connections=yes -c log_destination='syslog', 优先级高于postgresql.conf 和 ALTER SYSTEM

  • psql链接时通过PGOPTIONS指定,如下:
    env PGOPTIONS="-c geqo=off -c statement_timeout=5min" psql

文件相关变量说明:

  • data_directory 数据文件目录
  • config_file 服务配置文件
  • hba_file 主机认证文件
  • ident_file 用户名映射配置文件
postgres=# show data_directory;
    data_directory     
-----------------------
 /usr/local/pgsql/data
(1 row)

postgres=# show config_file;
              config_file              
---------------------------------------
 /usr/local/pgsql/data/postgresql.conf
(1 row)

postgres=# show hba_file;
             hba_file              
-----------------------------------
 /usr/local/pgsql/data/pg_hba.conf
(1 row)

postgres=# show ident_file;
             ident_file              
-------------------------------------
 /usr/local/pgsql/data/pg_ident.conf
(1 row)
  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值