enq: TX - row lock contention故障处理一则
6月19日,下午5点左右。数据库出现了大量的enq: TX - row lock contention等待事件,依照以往的经验,这类等待一般与业务逻辑有关。DBA可以做的事情。一般就是将锁等待着的连接信息,等待锁的SQL语句。甚至等待的详细数据行,还有就是锁持有者的连接信息,造成锁等待的SQL语句等一些基本信息提交给开发者,改动业务逻辑。
- 非常多情况下,改动业务逻辑不是一时半会能够马上解决的事,有时候假设锁持有或者锁等待业务不是特别重要。能够与应用维护人员协商,先停掉这部分业务,让其他业务正常执行
- 非常多时候。数据库仅仅有一个锁持有者。并且这个锁持有的连接也没有活动,能够与应用维护人员协商,尝试kill锁持有者,看看兴许锁等待是否能自己主动解决。
这样的情况通常是一个单独的连接出现僵死导致。kill掉持有者以后,问题自然就攻克了
- 第二种情况就是,前天晚上上线后,平时执行好好的业务,也没出现锁等待。有一天出现了这类问题。并且kill掉锁持有者以后。问题无法得到解决(业务逻辑问题,kill掉以后,兴许还会发生)。这通常是前天晚上上线引起。
| SESS | LMODE | LMODE | REQUEST | TYPE | EVENT | SQL_TEXT |
| Holder: 4266 | exclusive | 6 | 0 | TX | SQL*Net message from client | |
| Waiter: 3136 | none | 0 | 4 | TX | enq: TX - row lock contention | insert into xxxxx(ID,xxx,xxxx,xxx,….) values(seq_xxx.nextval,:"SYS_B_0",:"SYS_B_1",:"SYS_B_2",:"SYS_B_3",:"SYS_B_4",:"SYS_B_5") |
| Holder: 2276 | exclusive | 6 | 0 | TX | SQL*Net message from client | |
| Waiter: 1716 | none | 0 | 4 | TX | enq: TX - row lock contention | insert into xxxxx(ID,xxx,xxxx,xxx,….) values(seq_xxx.nextval,:"SYS_B_0",:"SYS_B_1",:"SYS_B_2",:"SYS_B_3",:"SYS_B_4",:"SYS_B_5") |
| Holder: 1288 | exclusive | 6 | 0 | TX | SQL*Net message from client | |
| Waiter: 1565 | none | 0 | 4 | TX | enq: TX - row lock contention | insert into xxxxx(ID,xxx,xxxx,xxx,….) values(seq_xxx.nextval,:"SYS_B_0",:"SYS_B_1",:"SYS_B_2",:"SYS_B_3",:"SYS_B_4",:"SYS_B_5") |
| Holder: 1000 | exclusive | 6 | 0 | TX | SQL*Net message from client | |
| Waiter: 1147 | none | 0 | 4 | TX | enq: TX - row lock contention | insert into xxxxx(ID,xxx,xxxx,xxx,….) values(seq_xxx.nextval,:"SYS_B_0",:"SYS_B_1",:"SYS_B_2",:"SYS_B_3",:"SYS_B_4",:"SYS_B_5") |
| Holder: 2989 | exclusive | 6 | 0 | TX | SQL*Net message from client | |
| Waiter: 862 | none | 0 | 4 | TX | enq: TX - row lock contention | insert into xxxxx(ID,xxx,xxxx,xxx,….) values(seq_xxx.nextval,:"SYS_B_0",:"SYS_B_1",:"SYS_B_2",:"SYS_B_3",:"SYS_B_4",:"SYS_B_5") |
session_cached_cursors设置为200。没有道理这个连接运行的语句游标已经被刷新出去
1 row inserted
1 row inserted、
enq: TX - row lock contention故障处理一则的更多相关文章
- 解决一则enq: TX – row lock contention的性能故障
上周二早上,收到项目组的一封邮件: 早上联代以下时间点用户有反馈EDI导入"假死",我们跟踪了EDI导入服务,服务是正常在跑,可能是处理的慢所以用户感觉是"假死" ...
- ORACLE等待事件:enq: TX - row lock contention
enq: TX - row lock contention等待事件,这个是数据库里面一个比较常见的等待事件.enq是enqueue的缩写,它是一种保护共享资源的锁定机制,一个排队机制,先进先出(FIF ...
- ORACLE AWR结合ASH诊断分析enq: TX - row lock contention
公司用户反馈一系统在14:00~15:00(2016-08-16)这个时间段反应比较慢,于是生成了这个时间段的AWR报告, 如上所示,通过Elapsed Time和DB Time对比分析,可以看出在这 ...
- Tuning “enq:TX – row lock contention” events
enq是一种保护共享资源的锁定机制,一个排队机制 排它机制从一个事务的第一次改变直到rollback or commit 结束这个事务, TX等待mode是6,当一个session 在一个表的行级锁定 ...
- 大表建立索引引发enq: TX - row lock contention等待
今天要给一张日志表(6000w数据)建立索引,导致生产系统行锁部分功能卡住 create index idx_tb_cid on tb_login_log(user_id); 开始执行后大概花费了20 ...
- enq: TX - row lock contention 参数P1,P2,P3说明
enq: TX - row lock contention三个参数,例如,下面的等待事件 * P1 = name|mode <<<<<<< ...
- 记录一则enq: TX - row lock contention的分析过程
故障描述:与客户沟通,初步确认故障范围大概是在上午的8:30-10:30之间,反应故障现象是Tomcat的连接数满导致应用无法连接,数据库alert中无明显报错,需要协助排查原因. 1.导入包含故障时 ...
- AWR之-enq TX - row lock contention的性能故障-转
1 对这一个小时进行AWR的收集和分析,首先,从报告头中看到DB Time达到近500分钟,(DB Time)/Elapsed=8,这个比值偏高: Snap Id Snap Time Sessio ...
- [Oracle] enq: TX - row lock contention 优化案例
依据开发反馈.近期每天早上7:30应用会报警.应用的日志显示数据库连接池满了.新的连接被拒绝. 首先.我做了ASH报告(报告区间:7:25 ~ 7:35),从ASH的等待事件发现enq: TX - r ...
随机推荐
- vue22 路由
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 动态代理(jdk--cglib)
JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息.过滤消息.把消息转发给委托类,以及事后处理消息等.代理类与委托类 ...
- Xamarin大佬的地址
https://www.cnblogs.com/hlx-blogs/p/7266098.html http://www.cnblogs.com/GuZhenYin/p/6971069.html
- hashCode 和 equals 方法
hashCode 和 equals 方法 hashCode()和equals()定义在Object类中,这个类是所有java类的基类,所以所有的java类都继承这两个方法. 使用hashCode()和 ...
- BZOJ3130: [Sdoi2013]费用流(二分,最大流)
Description Alice和Bob在图论课程上学习了最大流和最小费用最大流的相关知识. 最大流问题:给定一张有向图表示运输网络,一个源点S和一个汇点T,每条边都有最大流量.一个合法的网络 ...
- Linux学习总结(5)——CentOS常用的目录文件操作命令
CentOS常用的目录文件操作命令 一.路径操作的CentOS常用命令 cd pwd NO1. 显示当前路径 [root@rehat root]# pwd NO2. 返回用户主目录 [roo ...
- TRIZ系列-创新原理-31-多孔材料原理
多孔材料原理的详细描写叙述例如以下:1)让物体变成多孔的.或者使用辅助的多孔部件(如插入,覆盖):2)假设一个物体已经是多孔了,那么事先往里面填充某种物质:这个原理提出的原因是,一般机械系统通常都是由 ...
- HDU 5375 Gray code (简单dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5375 题面: Gray code Time Limit: 2000/1000 MS (Java/Oth ...
- eclispe中如何创建web项目
xian 1.从file中点击---->new----->other---->javaEE----->web---->Dynamic Web project----&g ...
- 第一天,Mysql安装,DDL(数据库定义语言),DBA,DML(数据库操纵语言),导入外面的sql文件
把“D:\mysql-5.6.22-winx64\bin”添加到系统环境变量path中了,然后在任意目录可访问mysql等命令,这样如登录等操作就不需要进入MySQL安装目录才好执行! MySQL下载 ...