`
dbaspider
  • 浏览: 262131 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Enq Tx - Row Lock Contention HOWTO

 
阅读更多

Troubleshooting Details

List of information to collect when high Row-Lock contention is seen on BRM DB objects (i.e. "Enq: Tx - Row Lock Contention In AWR Reports" messages seen in AWR reports)

1) output of the following two queries:

a)

SELECT a.sid||decode(request,0,'(holder)','(waiter)'||':blocked by:'||blocking_session) sess_id ,
lmode,
request,
a.type,
c.object_name,
decode(row_wait_obj#,-1,'Holder of Lock !!!',
dbms_rowid.rowid_create(1,row_wait_obj#,row_wait_file#,row_wait_block#,row_wait_row#)) row_id,
nvl(SQL_FULLTEXT,'Holder of Lock !!!')
FROM V$LOCK A, V$LOCKED_OBJECT B, ALL_OBJECTS C, V$SESSION D, V$SQL E
WHERE (id1, id2, a.type) in (select id1, id2, type from v$lock where request>0)
AND a.sid = b.session_id
AND b.object_id = c.object_id
AND d.sid = a.sid
AND d.sql_hash_value = e.hash_value(+)

b)

select * from <object_name> where rowid = <row_id> [ after getting object name and row_id from a) ]

2) the AWR reports, or any other useful collection of session info from BRM DB

3) the list of all processes, clients, etc. insisting on the same DB

4) the "pstack" taken on all CM processes

5) the cm.pinlog and dm_oracle.pinlog


0
2
分享到:
评论

相关推荐

    BLOG_【故障处理】Oracle_lhr_队列等待之TX - row lock contention

    ### 故障处理:Oracle_lhr_队列等待之TX - row lock contention #### 一、概述 在Oracle数据库管理中,“enq:TX-rowlockcontention”是一种常见的队列等待事件,通常与行级别的锁定冲突有关。这种冲突可能会导致...

    BLOG_【AWR分析】Oracle_lhr_队列等待之enq IV - contention案例.pdf

    ### Oracle AWR 分析之 enq: IV - Contention 案例解析 #### 一、概述 在Oracle数据库管理中,AWR (Automatic Workload Repository) 是一个非常重要的工具,用于诊断性能瓶颈并帮助优化数据库操作。本文将详细介绍...

    enq:TX index contention.txt

    cause:当插入新的索引条目时,发现索引块中没有足够的空间容纳新的索引条目,索引块就会产生分裂(分为5-5分裂...这时就会表现为enq: TX - index contention。本例中索引块分裂属于5-5 分裂,此分裂可以通过awr报告观察

    enq PS - contention.pdf

    【故障处理】enq: PS - contention 是一个Oracle数据库中常见的等待事件,通常与并行服务器(Parallel Server)的资源竞争有关。这篇博客主要讲解如何解决这类问题,并提供了详细的故障分析和解决步骤。 1. **等待...

    BLOG_【故障处理】Oracle_lhr_队列等待之TX - allocate ITL entry案例.pdf

    - **ITL (Intent To Lock)**: 在Oracle中用于支持行级锁定机制,允许并发读取操作但限制并发写入操作。 - **TX (Transaction)**: 表示这是一个与事务相关的等待事件。 - **Allocate ITL Entry**: 表示正在尝试为事务...

    序列等待事件总结

    本篇博客主要聚焦于四种特定的序列等待事件:enq SQ - contention、row cache lock、DFS lock handle和enq SV - contention。 1. **enq SQ - contention**: 这个等待事件发生在多个会话尝试获取对序列(sequence...

    【故障处理】队列等待之TX 等待事件处理.docx

    【故障处理】队列等待之TX - allocate ITL entry 引起的死锁处理 队列等待是数据库性能问题中的常见现象,特别是Oracle数据库中,它涉及到事务处理、并发控制和资源分配。TX - allocate ITL entry等待事件是由于...

    orcale死锁查杀PB版

    - 使用`v$session_wait`视图查找等待类型的`ENQ: TX - row lock contention`或`ENQ: TX - deadlock`。 - 查询`v$deadlock`和`v$deadlock_monitor`视图获取死锁信息。 - 执行`DBMS_LOCK.MONITOR`过程来监控死锁...

    BLOG_Oracle_lhr_ 【等待事件】等待事件系列(5.1)--Enqueue(队列等待) .pdf

    5. **enq:DX-contention**:分析DX-contention类型的队列等待,了解其背后的机制及应对措施。 6. **enq:SQ-contention序列等待**:解释SQ-contention类型的队列等待,并提供相关的调优技巧。 #### 1.2.2 相关参考...

    oracledb-exporter.0.2.9-ora18.5.linux-amd64.tar.gz

    - 锁等待情况(如ENQ: TX - ROW LOCK contention) Prometheus会定期抓取oracledb-exporter提供的这些指标,并根据预设的规则进行报警和可视化展示。你可以利用Prometheus的Alertmanager设置告警规则,当特定指标...

    EBS服务器升级PPT课件.pptx

    数据库性能分析显示,主要的性能瓶颈在于用户I/O,尤其是db file sequential read和db file scattered read事件,以及enq: TX - row lock contention,这些都可能导致新Session无法启动或需要更多内存来处理更多的...

    Oracle10g数据库最佳新特性:等待界面 (1)

    例如,对于"enq:TX - row lock contention"这类等待事件,可能需要考虑事务的并发控制策略或锁的粒度。 总之,Oracle 10g的等待界面改进极大地增强了DBAs在性能监控和问题诊断方面的能力。结合ADDM的自动化分析和...

    中国银行ORACLE优化培训方案

    - **enq:TX-rowlock contention**:行级锁争用,表示两个或多个会话尝试在同一行上执行不兼容的操作。 - **latch free**:闩锁等待,表示进程正在等待一个当前被其他进程占用的闩锁。 #### 三、使用与查看数据库...

    oraclev$sessionv$session_wait用途详解

    1. **等待事件类型**:`EVENT`字段列出了具体的等待事件名称,如“db file sequential read”表示顺序读取数据库文件,“enq: TX - row lock contention”表示行级锁竞争。 2. **等待时长**:`TIME_WAITED`字段提供...

    oracle DBA 例行维护内容

    WHERE event LIKE 'enq: TX - row lock contention' OR event LIKE '%wait%'; -- 杀死会话 ALTER SYSTEM KILL SESSION 'sid,serial#'; ``` ##### 2.4 检查系统空间占用 - **工具选择**:使用操作系统自带的...

    Oracle10g数据库最佳新特性:等待界面 (2)

    以SID为269的会话为例,如果它正等待enq:TX — row lock contention事件,意味着它在等待另一个会话释放锁。在Oracle 10g之前,找出阻塞会话可能需要编写资源密集型查询,但在10g中,只需简单查询v$session就能找到...

    BLOG_【故障处理】Oracle_lhr_序列cache值过小导致CPU利用率过高.pdf

    首先,需要了解enq:SQ-contention等待事件。该事件指的是当两个或多个会话试图同时使用同一个序列时,由于序列的当前值被一个会话占用,其他会话就必须等待。如果cache值设置得过小,序列的值就会频繁请求数据库访问...

    People soft on exadata

    - **行锁争用(enq:TX – row lock contention)**:在并发事务处理中,行锁争用是常见的问题之一。当多个事务尝试同时修改同一数据行时,就可能发生此类等待事件。 - **用户I/O**: - 单块读取(single block read...

Global site tag (gtag.js) - Google Analytics