enq: TX - row lock contention等待事件处理

下午接到同事的电话。说数据库内存cpu都很高。应用服务器停了,数据库压力还没有降下去。
进去后。发现有近50个enq: TX - row lock contention等待事件,还有几十个read by other session等待事件。查看了一下,这些会话都锁定了一张表,都在做update操作。
把update语句粘贴出来,一看执行计划。看了吓我一跳。全表扫描。更新一行也全表扫描,问了一下开发,原来他们前几天处理过这个表,但是重建的时候没有建主键。
这下问题好办了。把主键建上。
问题又来了,主键唯一冲突。好家伙。后来发现插入的重复数据是一摸一样的。这下把重复记录都删掉,留下一条,然后把主键建上。
把应用起来,一切正常。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25027760/viewspace-752119/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25027760/viewspace-752119/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值