【openGauss】openGauss查看锁表的详细信息
一、【openGauss】openGauss查看锁表的详细信息
SELECT DISTINCT CASE
WHEN a.pid <> 0 THEN
'select pg_terminate_backend(' || a.pid || ');'
ELSE
'select pg_terminate_session(0,' || a.sessionid || ');'
END AS "解锁SQL"
,c.relname
,a.pid
,a.state
,a.usename
,a.query
,a.query_start
,a.client_addr
,a.application_name
,a.*
FROM pg_stat_activity a
,pg_locks l
,pg_class c
WHERE a.pid = l.pid
AND l.relation = c.oid
AND c.relkind IN ('r', 'p')
AND relname NOT IN ('pg_class' ,'pg_authid' ,'pg_database')
AND query !~* 'VACUUM'
ORDER BY c.relname;