ITPub博客

首页 > Linux操作系统 > Linux操作系统 > enq: TX - row lock contention等待事件处理

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

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

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

请登录后发表评论 登录
全部评论

注册时间:2011-08-03

  • 博文量
    32
  • 访问量
    130412