当前位置: 代码迷 >> 综合 >> 用户取消操作错误和oracle被锁的表
  详细解决方案

用户取消操作错误和oracle被锁的表

热度:63   发布时间:2023-10-18 00:07:09.0

执行sql时经常会出现user request ...错误,查看sql也没有写错,这是我们需要查看下update进程是否被锁。

关于锁表的一些查询

1--锁表查询:
select count(*) from v$locked_object;
select * from v$locked_object;
2--查看哪个表被锁
select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id;
3--查看是哪个session引起的(一般会存在多个相同类型的session,会一直挂着,然后再操作也执行不了,这是需要先杀掉进程,再执行,看看是哪个 地方的原因。)
select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time; 
4--杀掉对应进程
执行命令:alter system kill session '121,3311';
121对应sid,3311对应serial#.

  相关解决方案