在做一个导入操作时,发现每次执行到一行记录时就出现ExecuteNonQuery执行无响应,也不报错,卡住不动了,最后发现是数据表这行数据被锁了,出现:enq: TX - row lock contention ,有可能是其他系统在操作这个记录时锁住了,导致要更新这行记录时就没了响应,最后把锁住数据表的进程杀掉才继续向下执行了
1、找到锁表的SID
SELECT a.sid, b.owner, object_name, object_type FROM v$lock a, all_objects b WHERE TYPE = 'TM' and a.id1 = b.object_id;
2、根据SID找到SERIAL
SELECT SID,SERIAL# FROM v$session WHERE sid = 73;
3、终止
alter system kill session '73, 10229';
oralce 表被锁导致ExecuteNonQuery执行无响应,也不报错
最新推荐文章于 2021-04-15 16:37:46 发布