如何获取PostgreSQL中指定连接PID对应的statement_timeout参数值
获取指定PID连接的statement_timeout参数方法
- 前提要求:PostgreSQL 10及以上版本,执行查询的账号必须拥有superuser权限
你只需要执行以下SQL即可,将语句中的<目标PID>替换为你从pg_stat_activity中查询得到的对应连接PID:
SELECT pg_backend_setting('statement_timeout', <目标PID>) AS statement_timeout;
- 返回结果说明:默认以毫秒为单位返回数值,例如返回
30000代表该连接设置的语句超时时间为30秒。
如果使用的是PostgreSQL 10以下的低版本,没有内置的跨会话查询参数的公开函数,你只能登录到对应PID所属的会话中,执行以下语句查询当前会话的参数:
SHOW statement_timeout;
排查异常:如果执行跨会话查询时报错或返回空值,请先确认目标PID为当前存活的有效连接PID,且执行查询的账号确实具备superuser权限。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

