pg-learner_个人页

pg-learner
0
2
0

个人介绍

暂无个人介绍

擅长的技术

获得更多能力
通用技术能力:

暂时未有相关通用技术能力~

云产品技术能力:

暂时未有相关云产品技术能力~

阿里云技能认证

详细说明
  • 提交了问题 2016-04-25

    PostgreSQL关闭JDBC客户端链接无法彻底关闭服务端后台的查询请求

暂无更多信息
正在加载, 请稍后...
暂无更多信息
  • 回答了问题 2019-07-17

    PostgreSQL关闭JDBC客户端链接无法彻底关闭服务端后台的查询请求

    找到方法了, 可以直接在客户端管理这类异常/超时的查询。 1、直接从客户端获取当前连接的进程id客户端新建jdbc连接conn时,通过执行以下sql获取该链接的后台进程pid:select procpid, start, S.client_host, S.client_port, now() - start as lap, current_queryfrom ( select backendid, pg_stat_get_backend_pid(S.backendid) as procpid, pg_stat_get_backend_activity_start(S.backendid) as start, pg_stat_get_backend_client_addr(S.backendid) as client_host, pg_stat_get_backend_client_port(S.backendid) as client_port, pg_stat_get_backend_activity(S.backendid) as current_query from (select pg_stat_get_backend_idset() as backendid) as S ) as S,( select inet_client_addr() as client_host, inet_client_port() as client_port ) as client where client.client_host = S.client_host and client.client_port = S.client_port; 2、客户端连接池管理线程记录connpid的对应关系 3、当客户端发现该连接conn异常/超时后,结合digoal回答的关闭查询pid的方法,将该pid上的查询关闭。pg_cancel_backend(pid)
    踩0 评论0
  • 提交了问题 2016-04-25

    PostgreSQL关闭JDBC客户端链接无法彻底关闭服务端后台的查询请求

正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息