postgreSQL - pg lock 조회 및 해제

1. LOCK 조회

select
	*
from
	pg_catalog.pg_locks a
join
	pg_catalog.pg_stat_all_tables b
on
	a.relation  = b.relid
where
	b.relname = '{tableName}'

2. PG_CANCEL_BACKEND 로 작업캔슬.

select
	pg_cancel_backend(a.pid)
from
	pg_catalog.pg_locks a
join
	pg_catalog.pg_stat_all_tables b
on
	a.relation  = b.relid
where
	b.relname = '{tableName}'

3. 위 방법이 안되는 경우, PG_TERMINATE_BACKEND로 상위 PID까지 캔슬.

select
	pg_terminate_backend(a.pid)
from
	pg_catalog.pg_locks a
join
	pg_catalog.pg_stat_all_tables b
on
	a.relation  = b.relid
where
	b.relname = '{tableName}'

© 2024. Chiptune93 All rights reserved.