搜过了,但是还是没有找出怎样select出发生死锁的表名。
解决方案 »
- orcle读取excel文件,excel版本是2010的报错无法正确执行
- 如何对Oracle数据库的一个表进行测试?
- 按指定id顺序输出,例如id为(3,12,8,9,45,6),要求查询结果也按照这个顺序输出。这个id是已知的。请高手指定,多谢!!
- 500分找oracle9.2.0.1
- 我创建了表空间(tablespace)aa,然后创建数据库,但怎么能确定我建的库是在aa中啊?我用dbca建库,但这个过程中没有让我选表空间的步骤
- 求ADO+Oracle存储过程有BLOB参数例子
- 经常提示连接不上
- ora-01041内部错误,hostdef扩展名不存在,高手指点!
- 初学者请教一个简单的存储过程的问题?
- SQL语句问题,在线等。
- 一个很奇怪的问题proc调用存储过程第一次执行很慢的问题
- SQL PLUS 建表的问题,自己做了很久了,只能求助大家了-----
where v$locked_object.object_id = user_objects.object_id光说不练之龙飞虎
col machine format a10
col username format a10
col objectname format a10
col program format a10
select a.object_name objectname,b.session_id,c.serial#,c.program program,c.username username,c.command,c.machine machine,c.lockwait from all_objects a,v$locked_object b,v$session c where a.object_id =b.object_id and c.sid=b.session_id
/
开始菜单-》程序-》oracle-oraHome92->Enterprise Manager Console
选择独立登录 然后选择从本地配置文件登录。
选择锁表的数据库 -》例程-》锁 找到被锁的表 中断会话即可方法二(PL/SQL)
进入Tools -> Sessions
找到锁表的进程-》点击右键 kill掉方法三
找到sid,serial#
alter system kill session 'sid,serial#'
from v$session a,audit_actions b
where a.command=b.action
And username='&1';
------谁被锁住?
Select a.sid,a.serial#,a.username,A.LOCKWAIT,a.status,a.program,b.name
from v$session a,audit_actions b
where a.command=b.action
AND LOCKWAIT IS NOT NULL;
------谁在锁表?
Select a.sid,a.serial#,a.username,A.LOCKWAIT,a.status,a.program,b.name
from v$session a,audit_actions b
where a.command=b.action
AND STATUS='ACTIVE';Select sl.username, sl.sid, sl.serial#
from v_$lock l1, v$session s1
where exists (select * from v_$lock l2, v$session s2
where l2.sid=s2.sid and l2.id1=l1
and s2.lockwait=l2.kaddr
and request=0
and l1.sid=s1.sid) ;