【发布时间】:2017-06-20 07:14:53
【问题描述】:
我的 Oracle 数据库中发生了死锁。当我从同一个表中同时删除两个实体时,会发生死锁 (ORA-00060)。我怎样才能知道在哪张桌子上设置了锁?
到目前为止我所做的是:
- 我获得了一个包含死锁图的跟踪文件,所以第一个问题是:我能否使用死锁图中的资源名称以某种方式识别已在其上设置锁的表?如何?资源名称格式如下:TM-000168D7-00000000-00000005-00000000
- 似乎外键缺失索引是这种死锁最常见的来源,所以我检查了是否有一些缺失的索引并且找不到。但是,架构非常复杂,所以我可以忽略它。
有什么提示或建议吗?
【问题讨论】:
-
我在某处读到他/他的书-oracledbahub.com/2011/02/…
-
000168D7相关栏目找到了吗?有外键吗?