迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 数据库 > PostgreSQL >

在 PostgreSQL 中杀死一个进程 ID

作者:迹忆客 最近更新:2023/03/20 浏览次数:

今天,我们将学习如何在使用 PostgreSQL 数据库时在后台终止或停止正在运行的查询。

如果前端停止工作而后台进程仍在运行,则可能会发生这种情况。在这种情况下,你可能想要终止该进程。

使用 pg_cancel_backend 杀死 PostgreSQL 中的进程 ID

首先,使用这个命令查看所有正在运行的任务:

select * from pg_stat_activity;

现在,如果你想从此处删除任务,请使用以下查询:

SELECT pg_cancel_backend(11080), pg_terminate_backend(11080) FROM pg_stat_activity WHERE state = 'active';

我们将 11080 用于 active 进程并使用此语句终止它。稍后它将返回到 idle

因此,pg_cancel_backend 在终止进程时往往有点宽松,因为它需要一些时间。但在许多情况下,它可能会重新运行;因此我们使用 pg_terminate_backend 硬杀进程。

不要将此称为系统中唯一的活动进程,因为这可能会关闭你当前的查询。因此,仅在需要时才明智地使用这些功能。

你始终可以选择终止当前 PostgreSQL 会话并重新启动它,而不是终止进程。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 PSQL 中运行 SQL 文件

发布时间:2023/03/20 浏览次数:178 分类:数据库

本文解释了如何直接从终端/命令行或 psql shell 运行 SQL 文件。为此,你需要指定主机名、端口、用户名和数据库名称。

在 PostgreSQL 中使用循环

发布时间:2023/03/20 浏览次数:124 分类:PostgreSQL

在 PL/SQL 中,你可能需要在 Postgres 中使用循环。我们可以使用 FOR 和 WHILE 语句来创建循环。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便