如何停止/杀死postgresql查询?

这个问题是,当邮政局长在后台运行您的查询时,如何杀死或停止它?

例如,您的shell或任何前端可能由于网络问题而断开连接,您不能使用ctrl-D杀死它,但后台邮政管理员仍在运行您的查询。如何杀死它?

341641 次浏览

我所做的是首先检查哪些正在运行的进程

SELECT * FROM pg_stat_activity WHERE state = 'active';

找到要终止的进程,然后输入:

SELECT pg_cancel_backend(<pid of the process>)

这基本上是“启动”一个请求以优雅地终止,虽然查询立即返回,但可能在一段时间后得到满足。

如果进程不能被杀死,请尝试:

SELECT pg_terminate_backend(<pid of the process>)