我有一台机器的追溯,下面的查询似乎挂了好几天:
SELECT table_name FROM user_tables
什么可能产生这种锁定?用户永远不能修改此表;并且有大量后续的查询实例成功运行。
答案 0 :(得分:3)
因此,由于条件不再存在,因此无法判断发生了什么。
但是,在将来,如果再次出现类似或类似情况,您将需要使用Oracle的等待界面。也就是说,请查看V$SESSION
。
首先,您需要确定进程是在旋转(即在CPU上)还是阻塞(即等待等待事件)。确定这一点的方法是查看STATE
列:
'WAITING'
,则会话被阻止。如果是这种情况,则EVENT列应描述会话正在等待的事件。'WAITED KNOWN TIME'
,则WAIT_TIME是以厘秒为单位的时间。'WAITED SHORT TIME'
,则会话等待的时间不到一厘秒。'WAITED UNKNOWN TIME'
,则等待的时间未知,因为会话的timed_statistics设置为FALSE。希望有所帮助。