postgresql.config:log_min_duration_statement = -1
客户甲:
SELECT set_config('log_min_duration_statement', '30000', false);
SELECT current_setting('log_min_duration_statement');
-----
30s
Run Code Online (Sandbox Code Playgroud)
客户B:
SELECT current_setting('log_min_duration_statement');
-----
-1
Run Code Online (Sandbox Code Playgroud)
客户端B更改postgresql.config:log_min_duration_statement = 60000
select pg_reload_conf();
SELECT current_setting('log_min_duration_statement');
---
1 min
Run Code Online (Sandbox Code Playgroud)
===
好的,客户端 A 如何重置其设置并使用 postgresql.config 文件中的当前参数值而不关闭连接?即客户端A这样做
select pg_reload_conf();
Run Code Online (Sandbox Code Playgroud)
但他仍然有之前设定的30多岁
https://www.postgresql.org/docs/current/static/sql-reset.html
\n\n\n\n\nRESET \xe2\x80\x94 将运行时参数的值恢复为默认值
\n
只是
\n\nreset log_min_duration_statement\nRun Code Online (Sandbox Code Playgroud)\n\n还有https://www.postgresql.org/docs/current/static/functions-admin.html
\n\n\n\n\n\n
set_config将参数setting_name 设置为new_value。如果 is_local\n 为 true,则新值将仅适用于当前事务。如果\n您希望新值应用于当前会话,请改用 false\n。该功能对应于SQL命令SET。
换句话说你不需要pg_reload_config()- 因为您仅更改会话级别的设置。修改 ponstgres.conf 后才需要重新加载
与上面相同的链接:
\n\n\n\n\n
pg_reload_conf()导致服务器进程重新加载其配置文件\n
| 归档时间: |
|
| 查看次数: |
4791 次 |
| 最近记录: |