如何终止特定 PostgreSQL 用户的所有数据库活动?
我知道如何选择它们:SELECT * FROM pg_stat_activity WHERE usename='foo_user'
?
我在这里找到了这个:/sf/answers/2472371891/
我所做的是首先检查正在运行的进程
Run Code Online (Sandbox Code Playgroud)SELECT * FROM pg_stat_activity WHERE state = 'active';
找到您要终止的进程,然后键入:
Run Code Online (Sandbox Code Playgroud)SELECT pg_cancel_backend(<pid of the process>)
如果无法杀死进程,请尝试:
Run Code Online (Sandbox Code Playgroud)SELECT pg_terminate_backend(<pid of the process>)
但如何将其应用于多个进程呢?
有时 CI 中的测试花费太长时间,系统应该被破坏。
小智 5
将其与您的第一个选择一起使用:
SELECT pg_cancel_backend(pid)
FROM pg_stat_activity
WHERE usename='foo_user'
Run Code Online (Sandbox Code Playgroud)