解决oracle锁表的方法

转载 2013年12月04日 17:01:50
1. ORACLE中查看当前系统中锁表情况
select * from v$locked_object
可以通过查询v$locked_object拿到sid和objectid,然后用sid和v$session链表查询是哪里锁的表,用v$session中的objectid字段和dba_objects的id字段关联,查询详细的锁表情况。
查询SQL如下:
select sess.sid,
       sess.serial#,
       lo.oracle_username,
       lo.os_user_name,
       ao.object_name,
       lo.locked_mode
  from v$locked_object lo, dba_objects ao, v$session sess, v$process p
where ao.object_id = lo.object_id
   and lo.session_id = sess.sid;
查询是什么SQL引起了锁表的原因,SQL如下:
select l.session_id sid,
       s.serial#,
       l.locked_mode,
       l.oracle_username,
       s.user#,
       l.os_user_name,
       s.machine,
       s.terminal,
       a.sql_text,
       a.action
  from v$sqlarea a, v$session s, v$locked_object l
where l.session_id = s.sid
   and s.prev_sql_addr = a.address
order by sid, s.serial#;
2. ORACLE解锁的方法
alter system kill session ’146′;  –146为锁住的进程号,即spid

sybase锁表检查与解决方法

  • 2011年07月12日 09:01
  • 5KB
  • 下载

oracle锁表解决

  • 2013年04月11日 17:43
  • 1018B
  • 下载

Oracle锁表查询和解锁方法

数据库操作语句的分类 DDL:数据库模式定义语言,关键字:createDML:数据操纵语言,关键字:Insert、delete、updateDCL:数据库控制语言 ,关键字:grant、remove...

Oracle的KILL锁表及清楚session方法

一、处理过程      1.通过查找出已被锁定的数据库表及相关的sid、serial#及spid:        select object_name as 对象名称,s.sid,s.serial#,...

Oracle的KILL锁表及清除session方法

一、处理过程       1.通过查找出已被锁定的数据库表及相关的sid、serial#及spid:         select object_name as 对象名称,s.sid,s.seri...

oracle 锁表查询及解决、表字段查询

在进行批量对DML操作时程序竟然中断了,不再往下执行、查询一下某张表被锁住了,因此不再往下执行了 如果怀疑表被锁了,或者事务未被正常关闭,在Oracle数据库中我们可以通过以下语句进行查询获取相关信...
  • karali
  • karali
  • 2013年08月28日 13:05
  • 5562

Oracle 解决锁表问题

前言更新一张表的数据,就几百条,然后特别慢,一直在执行,然后强制退掉,重新执行还是一样,考虑到可能是锁表的问题!解决①首先查找是哪些session被锁:select object_name,machi...

oracle锁表查询及解决办法

ORACLE 如何查询被锁定表及如何解锁释放session后台数据库操作某一个表时发现一直出于假死状态,可能是该表被某一用户锁定。1.锁表,随便写一个update的语句.不要commit;如 ...

oracle 锁表解决方案

select count(1)   from v$locked_object l, dba_objects o, v$session s, v$process p  where  l.objec...
  • hzd_123
  • hzd_123
  • 2013年08月06日 14:15
  • 479

Oracle 出现锁表问题解决步骤(以前写的一份故障排查报告)

基本操作顺序1 查出锁定object的session的信息以及被锁定的object名SELECT l.session_id sid, s.serial#, l.lo...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:解决oracle锁表的方法
举报原因:
原因补充:

(最多只允许输入30个字)