分享

查看pg正在执行的sql,并杀掉长时间等待进程

 jas0n_liu 2018-10-08
查看执行的sql:
SELECT procpid,start,now() - start AS lap,current_query FROM (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_activity(S.backendid) AS current_query FROM (SELECT pg_stat_get_backend_idset() AS backendid) AS S ) AS S WHERE current_query <> '<IDLE>';

杀掉进程有两种方式:

第一种是:

SELECT pg_cancel_backend(PID);
这种方式只能kill select查询,对update、delete 及DML不生效。

第二种是:
SELECT pg_terminate_backend(PID);
这种可以kill掉各种操作(select、update、delete、drop等)操作

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多