暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Postgresql修改配置生效方法

DB小榴莲 2019-12-23
6840

对于配置服务器,太多时候我们在Linux中做的操作是,配置*.conf文件,然后重启服务。很多服务都具有reload功能,具体到某个配置,有时候需要重启服务而使得配置生效,这并不是一件容易的事情。


但是,postgresql却将这部分能用在数据表中显式的告诉了我们

    postgres# select name, context from pg_settings;
    namecontext
    archive_command

    sihup

    archive_modepostmaster
    block_sizeinternal
    log_connectionsbackend
    log_min_duration_statementsuperuser
    search_patchuser

     

    • internal: 编译期间的设置,只有重新编译才能生效。

    • postmaster: 只有服务重启才能生效。

    • sighup: 给服务器发送HUP信号会使服务器重新加载postgresql.conf配置,可以立即生效。

    • backend: 与sighup类似,但是不影响正在运行的会话,只在新会话中生效

    • superuser: 使用superuser(如postgres)才能更改,不用重新加载所有配置即可生效。

    • user: 单个会话用户可以在任意时间做修改,只会影响该会话。

     

    重新加载数据库配置的方法有三种


    1. 用超级用户运行

      postgres=# SELECT pg_reload_conf();


      2. 用UNIX的kill手动发起HUP信号

        $kill -HUP PID


        3.使用pg_ctl命令触发SIGHUP信号

          $pg_ctl reload
          最后修改时间:2020-01-04 19:21:35
          文章转载自DB小榴莲,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

          评论