1 S postgres 5038 876 0 80 0 - 11962 sk_wai 09:57 ? 00:00:00 postgres: postgres my_app ::1(45035) idle
1 S postgres 9796 876 0 80 0 - 11964 sk_wai 11:01 ? 00:00:00 postgres: postgres my_app ::1(43084) idle 我见过很多这样的人。我们正在尝试修复我们的连接泄漏。但同时,我们希望为这些空闲连接设置一个超时,可能最大为5分钟。
发布于 2017-01-24 09:09:11
在PostgreSQL 9.6中,有一个新的选项idle_in_transaction_session_timeout,它应该可以完成您所描述的任务。您可以使用SET命令设置它,例如:
SET SESSION idle_in_transaction_session_timeout = '5min';发布于 2013-05-16 16:22:02
在PostgreSQL 9.1中,使用以下查询的空闲连接。它帮助我避免了在重新启动数据库时所需要的情况。这主要发生在JDBC连接打开和未正确关闭的情况下。
SELECT
pg_terminate_backend(procpid)
FROM
pg_stat_activity
WHERE
current_query = '<IDLE>'
AND
now() - query_start > '00:10:00';发布于 2020-04-05 19:32:41
允许在没有外部计划任务的情况下启用数据库会话超时的一种可能的解决方法是使用我开发的扩展pg_timeout。
https://stackoverflow.com/questions/13236160
复制相似问题