1、含义
等待事件: enq: TX - row lock contention
2、发生场景
1)、当前会话要更新或删除的记录,已经被其他会话更新或删除。
2)、对于表上有唯一索引的情况,多个会话插入或更新为相同的键值。
3)、对于表上有位图索引的情况,多个会话即使更新不同记录,只要这些记录在位图索引上的键值相同,也会产生行锁。
3、危害
1)、业务操作长时间无法完成
2)、会导致会话积压
数据库连接池逐渐被占满,应用获取不到数据源,无法创建新的数据库连接或操作系统CPU、内存资源逐渐耗尽,无法创建新的数据库连接
3)、会导致产生其他争用,如bufferbusy wait, ITL contention等
4、解决方案
先行会话需要结束事务(transaction):commit或者rollback
或者强制结束先行会话:kill session
5、案例
6、导致此情形的典型情况
等待事件: enq: TX - row lock contention
2、发生场景
1)、当前会话要更新或删除的记录,已经被其他会话更新或删除。
2)、对于表上有唯一索引的情况,多个会话插入或更新为相同的键值。
3)、对于表上有位图索引的情况,多个会话即使更新不同记录,只要这些记录在位图索引上的键值相同,也会产生行锁。
3、危害
1)、业务操作长时间无法完成
2)、会导致会话积压
数据库连接池逐渐被占满,应用获取不到数据源,无法创建新的数据库连接或操作系统CPU、内存资源逐渐耗尽,无法创建新的数据库连接
3)、会导致产生其他争用,如bufferbusy wait, ITL contention等
4、解决方案
先行会话需要结束事务(transaction):commit或者rollback
或者强制结束先行会话:kill session
5、案例
![](http://img.blog.itpub.net/blog/attachment/201804/26/31476473_1524695919h3dB.png?x-oss-process=style/bb)
6、导致此情形的典型情况
![](http://img.blog.itpub.net/blog/attachment/201804/26/31476473_1524695997Q202.png?x-oss-process=style/bb)
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31476473/viewspace-2153370/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/31476473/viewspace-2153370/