test=# select * from sys_stat_activity;
datid | datname | pid | usesysid | usename | application_name | client_addr | client_hostname | client_port | backe
nd_start | xact_start | query_start | state_change | wait_event
_type | wait_event | state | backend_xid | backend_xmin | query
-------+---------+------+----------+---------+------------------+-------------+-----------------+-------------+--------------
-----------------+-------------------------------+-------------------------------+-------------------------------+-----------
------+------------+--------+-------------+--------------+----------------------------------
14811 | TEST | 5478 | 10 | SYSTEM | ksql | | | -1 | 2021-04-16 11
:30:53.584030+08 | | 2021-04-16 11:31:03.687795+08 | 2021-04-16 11:31:03.688335+08 |
| | idle | | | select * from student;
14811 | TEST | 5586 | 10 | SYSTEM | ksql | | | -1 | 2021-04-16 11
:32:27.297028+08 | 2021-04-16 11:33:20.298848+08 | 2021-04-16 11:33:20.298848+08 | 2021-04-16 11:33:20.298853+08 |
| | active | | 2007 | select * from sys_stat_activity;
(2 rows)
test=# select sys_terminate_backend(pid) from sys_stat_activity where
test-# pid <> sys_backend_pid();
test=# select * from sys_stat_activity;
datid | datname | pid | usesysid | usename | application_name | client_addr | client_hostname | client_port | backe
nd_start | xact_start | query_start | state_change | wait_event
_type | wait_event | state | backend_xid | backend_xmin | query
-------+---------+------+----------+---------+------------------+-------------+-----------------+-------------+--------------
-----------------+-------------------------------+-------------------------------+-------------------------------+-----------
------+------------+--------+-------------+--------------+----------------------------------
14811 | TEST | 5586 | 10 | SYSTEM | ksql | | | -1 | 2021-04-16 11
:32:27.297028+08 | 2021-04-16 11:35:18.486392+08 | 2021-04-16 11:35:18.486392+08 | 2021-04-16 11:35:18.486479+08 |
| | active | | 2007 | select * from sys_stat_activity;
(1 row)
1、断开数据库的所有连接
select sys_terminate_backend(pid) from (select pid from sys_stat_activity where datname = 'xxx' ) a;
用于删库时提示:database “xxx” is being accessed by other users 详细:There are 2 other sessions using the database.