参数名称大小写敏感,参数主要有5种类型: boolean,string,integer,floating point,enumerated (enum).
配置文件路径: /usr/local/pgsql/data/postgresql.conf /usr/local/pgsql/data/postgresql.auto.conf 服务器启动时默认读取的配置文件为 postgresql.conf。 【ALTER SYSTEM】 ALTER SYSTEM 可动态修改参数,修改记录文件为 postgresql.auto.conf ,该文件不可手动编辑,且会覆盖 postgresql.conf 中的参数值,即系统首选postgresql.auto.conf中的设置。 #动态配置命令 ALTER SYSTEM SET configuration_parameter { TO | = } { value | 'value' | DEFAULT } ALTER SYSTEM RESET configuration_parameter ALTER SYSTEM RESET ALL ALTER SYSTEM 将参数设置为 DEFAULT 或 RESET 时,参数将被移除。重新设置后需重载(pg_ctl reload 或 pg_reload_conf())配置文件才生效,或重启系统服务。 #重新加载配置文件 [postgres@hzc ~]$ pg_ctl reload -D /usr/local/pgsql/data postgres=# pg_reload_conf() 【ALTER DATABASE】数据库级别的配置影响单个数据库。重新连接或刷新会话时生效。 ALTER DATABASE name SET configuration_parameter { TO | = } { value | DEFAULT } ALTER DATABASE name SET configuration_parameter FROM CURRENT ALTER DATABASE name RESET configuration_parameter ALTER DATABASE name RESET ALL 【ALTER ROLE】角色或数据库级别配置。重新连接或刷新会话时生效。 ALTER ROLE { role_specification | ALL } [ IN DATABASE database_name ] SET configuration_parameter { TO | = } { value | DEFAULT } ALTER ROLE { role_specification | ALL } [ IN DATABASE database_name ] SET configuration_parameter FROM CURRENT ALTER ROLE { role_specification | ALL } [ IN DATABASE database_name ] RESET configuration_parameter ALTER ROLE { role_specification | ALL } [ IN DATABASE database_name ] RESET ALL 【SHOW / SET】影响当前会话级别。可查看当前连接的参数和重新设置参数。 SHOW name SHOW ALL SET [ SESSION | LOCAL ] configuration_parameter { TO | = } { value | 'value' | DEFAULT } SET [ SESSION | LOCAL ] TIME ZONE { timezone | LOCAL | DEFAULT } #查看当前参数值 SELECT name,setting,vartype,boot_val,min_val,max_val,reset_val FROM pg_settings; 示例: SHOW DateStyle; SHOW ALL; SELECT * FROM pg_timezone_names WHERE abbrev='+08'; SET TIME ZONE 'Europe/Rome'; SET TIME ZONE 'Etc/GMT-8'; SELECT NOW(); SELECT name,reset_val FROM pg_settings where name='enable_sort'; UPDATE pg_settings SET setting = 'off' WHERE name = 'enable_sort'; SELECT set_config('enable_sort','on',true); --true:当前事务级别 SELECT set_config('enable_sort','off',false);--false:当前会话级别 SET enable_sort TO DEFAULT;
其他参数特殊设置方法参考: https://www.postgresql.org/docs/10/static/config-setting.html