PostGreSQL:数据表被锁无法操作
问题描述
在使用QGIS向远程服务器上预先部署好的PostGreSQL数据表中写入POI点数据(假设表名称为:tb_poi)时,由于各种原因,导致出现以下情况:
1. 远程服务器上的PostGreSQL数据库中,存在名称为tb_poi的数据表;
2.但是无法对tb_poi数据表进行操作,例如:查看数据表结构、通过SQL语句查询数据表记录等。
经过排查,猜测可能是由于多方操作,导致tb_poi数据表被锁了。
解决方案
查询被锁住的数据表
SQL语句如下,
select a.locktype,a.database,a.pid,a.mode,a.relation,b.relname
from pg_locks ajoin pg_class b on a.relation = b.oid
#b.relname对应要查找的、可能被所住的目标数据表名称
WHERE b.relname = 'tb_poi';
查询结果如下,