oracle locked time,ORACLE distributed_lock_timeout参数
今天上午碰到一个报错:
ORA-02049:timeout:distributed transaction waiting for lock
但是并未对业务造成实际影响,过了一段时间后好了。因为那段时间,用户连续做了100笔的核销业务。
【经查】
ORA-02049错误说明如下:
ORA-02049:timeout:distributed transaction waiting for lock
cause:exceeded INIT.ORA distributed_lock_timeout seconds waiting for lock.
action:treat as a deadlock.
【解决】
1、先查是否又死锁出现:
SELECT l.session_id sid, s.serial#, l.locked_mode,l.oracle_username,
l.os_user_name,s.machine, s.terminal, o.object_name, s.logon_time
FROM v$locked_object l, all_objects o, v$session s
WHERE l.object_id = o.object_id
AND l.session_id = s.sid
ORDER BY sid, s.serial#;
有的话可以根据业务实际情况考虑杀掉,恢复正常业务
alter system kill session 'sid,serial#';
2、再查一个参数distributed_lock_timeout,可以考虑是否需要调优
最好不要去调这个参数,除非业务被影响到,并且通过应用程序无法避免这个问题
2.17 ORACLE distributed_lock_timeout
2.17.1 参数出处ORACLE初始参数文件:init.ora -> distributed_lock_timeout。
2.17.2 时间单位
秒。
2.17.3 取值范围
大于0。
2.17.4 默认取值
60 。
2.17.5 用途解释
分布式事务锁等待超时(distributed transaction waiting for lock),指第二个事务处理需要的数据库资源,正被第一个分布式事务占用而锁定,那么,第二个事务将等待第一个分布式事务释放此资源,等待distributed_lock_timeout时间后,如果第一分布式事务仍然没有释放此资源,第二个事务触发此超时。
2.17.6 超时后果
如果资源被第一个事务正常使用锁定,ORACLE回滚第二个事务,并返回错误:"ORA-02049: time-out: distributed transaction waiting for lock "。
如果第一个事务处理完成,资源释放后,再尝试第二个事务,就会成功。如果第二个事务不能等待资源自动释放,那么可以采用处理数据库死锁(deadlock)的措施,人工介入,清除第一个事务,但一般不建议采用这种方式,因为第一个事务一般会正常结束的。
如果资源被第一个事务因为处于不确定分布事务状态(in-doubt distributed transaction)而锁定,ORACLE回滚第二个事务,并返回错误:"ORA-01591: lock held by in-doubt distributed transaction identifier "。
这种错误遇到的可能性较小,一般只有在分布事务的关键提交阶段出现网络、系统故障,才可能出现此故障,而且,当网络、系统故障恢复后,ORACLE一般可以自己解决此问题,不需要人工介入。如果一定要人工介入,可以查阅ORACLE专门的手册。
2.17.7 设置考虑
出现这样的超时,是因为特定数据库资源的使用碰撞,要分析应用系统的业务特点,确定碰撞可能发生的条件,在此条件下,资源可能被先来者锁定多长时间(T1),后来者又能够等多长时间(T2),再来设置此参数(T)的大小。如果在大多数情况下,T1 < T2, 那么就设置T1 < T < T2;反之,大多数情况下,T1 > T2,那么,就设置T < T2。
因此,不分析业务特点,一味的增大和减小是不恰当的。
【这篇文章前面的部分也可以看一下的】
oracle locked time,ORACLE distributed_lock_timeout参数相关推荐
- oracle locked time,Oracle里面的用户smsdb无法登录 LOCKED(TIMED)
创建的一个用户smsdb ,查看状态LOCKED(TIMED) 解锁后,conn smsdb/password 仍然报错,然后又被锁 :最后发现是错误登陆次数达到oracle限制的10次:导致后续无法 ...
- oracle locked timed,Oracle里面的用户smsdb无法登录 LOCKED(TIMED)
创建的一个用户smsdb ,查看状态LOCKED(TIMED) 解锁后,conn smsdb/password 仍然报错,然后又被锁 :最后发现是错误登陆次数达到oracle限制的10次:导致后续无法 ...
- t4c oracle,locked (a oracle.jdbc.driver.T4CConnection
发现写Oracle的线程挂住了,场景是从mysql读数据,然后写到Oracle. 1 定位线程 因为在同一台机器上运行了多个java进程,要找到对应的pid,就是连接mysql的的那个进程. [adm ...
- oracle solaris 内核 源码,Oracle和SUN Solaris内核参数
Oracle和SUN Solaris内核参数 2010-4-11文字大小:大中小 本文描画了Sun Solaris上运转Oracle数据库所须要配置的一些内核参数. 一些预备知识shared memo ...
- oracle imp 1403,Oracle中用exp/imp命令参数详解【转】
Oracle中用exp/imp命令参数详解 [用 exp 数 据 导 出]: 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:daochu.dmp中 expsyste ...
- oracle技术之查询初始化参数的方法(六)
查询初始化参数的方法很多,比如SHOW PARAMETER,或查询V$PARAMETER等,这里简单总结一下. 这一篇描述CREATE PFILE的方法检查初始化参数. 前面介绍了很多种方法,这些方法 ...
- 修改oracle数据库内存参数,物理内存扩容,oracle 11g R1数据库相关参数修改
背景:对主备机的物理内存扩容一倍,内存扩容后,需要修改数据库相关的内存参数,包括数据库层面和操作系统层面.预计对备机扩容一倍内存操作完毕后,修改相关.. 背景: 对主备机的物理内存扩容一倍,内存扩容后 ...
- oracle adjusting parallel,Oracle 并行相关的初始化参数
Oracle数据库并行操作,特别是在RAC环境,一定程度上能够提升数据库的性能,所以对相关的初始化参数的了解是必要的,这篇文章将根据实际的案例讨论Oracle数据库的部分并行参数. Oracle数据库 ...
- oracle pfile 注释,Oracle pfile/spfile参数文件详解
基本规则 a.在SPFile文件中,所有参数都是可选的,也就是说只需要在初始化参数文件中列出那些需要修改的参数,其它保持默认值即可. b.SPFile文件中只能包含参数赋值语句和注释语句.注释语句以& ...
最新文章
- 应用上架被拒2.1问题
- 如何判断一个数组是否按顺序排好了
- Delphi中文件名函数-路径、名称、子目录、驱动器、扩展名
- ffmpeg图片压缩为视频
- 愤怒的小鸟(爆搜,剪枝)
- Android 操作SQLite基本用法
- 群集lvs—DR的配置及应用
- 分离数据库(Detach database).
- Booting Android: bootloaders, fastboot and boot images
- Gym - 100952H--H. Special Palindrome--dp整数划分(模板)
- 运行时错误7内存溢出_分别从运行时和GC的角度看JAVA8内存管理
- SpringCloud项目:实现推送消息到RabbitMQ消息中间件
- 中国银行网点全集数据
- 电阻触摸屏 linux 校准软件,android 电阻单点触摸屏校准
- BYTE WORD DWORD
- Java实现用汉明距离进行图片相似度检测的
- MYSQL数据库系统第4次实验 单表查询
- 面向对象设计之单一职责原则(Simple-Responsibility Principle)
- 基于小样本量的水下图像识别
- word怎么批注修改文章
热门文章
- GARFIELD@02-19-2005
- qt-项目部署(某些情况下编译器中运行异常的话可以使用命令windeployqt 程序名在安装的qt dos命令下补全部分依赖库在运行项目或发布)
- C#中控件如何设置透明色
- winform-日记
- 寄存器(CPU的工作原理)
- SwiftUI3优秀文章List 去掉左右间距问题
- java 缓存ech_ehcache获取缓存空指针
- flask mysql项目模板渲染_Flask框架模板渲染操作简单示例
- html选择文件夹插件,js/jq仿window文件夹框选操作插件
- 反序列化工具_JBOSS反序列化漏洞