sql – 如何解决ORA-02049和一般锁定问题与Oracle

前端之家收集整理的这篇文章主要介绍了sql – 如何解决ORA-02049和一般锁定问题与Oracle前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我偶尔得到ORA-02049进行一些长期运行和/或密集型交易.似乎没有这样的模式,但它发生在一个简单的INSERT上.

我不知道如何获取任何信息或Oracle,但是必须有办法吗?登录锁定或至少一种查看当前锁的方式?

解决方法

一种可能的方法是将distributed_lock_timeout的INIT.ORA参数增加到更大的值.这样就可以让你更长的时间观察v $lock表,因为锁会持续更长时间.

为了实现自动化,您也可以

>每5-10秒运行一次sql作业,将v $lock或sandos给出的查询的值记录到表中,然后分析它以查看哪个会话导致锁定.
>运行STATSPACK或AWR报告.被锁定的会话应该以高的时间出现,因此可以被识别.

v $session还有3个更多的列blocking_instance,blocking_session,blocking_session_status可以添加到上面的查询中,以给出什么是锁定的图片.

猜你在找的MsSQL相关文章