Circle seal 532B-1M-1【Oracle 并发回滚】

数据库遇到大量回滚进程,主要涉及对象TAB1及其索引。通过v$fast_start_transactions视图发现并发回滚活动。进一步分析smon trace文件揭示,回滚事务与表TAB2上的更新及触发器有关,触发器导致对TAB1的更新。更新操作使用相同XID,与回滚事务匹配。分析redo日志确认问题源头为对TAB2的大规模更新操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Oracle 并发回滚

问题描述:
数据库突然出现大量的回滚进程。
问题分析:
从v s e s s i o n 中 看 到 操 作 的 对 象 是 T A B 1 及 表 上 的 索 引 。 但 是 为 什 么 会 使 用 并 发 来 回 滚 呢 ? 查 询 视 图 v session中看到操作的对象是TAB1及表上的索引。但是为什么会使用并发来回滚呢? 查询视图v sessionTAB1使vfast_start_transactions

点击(此处)折叠或打开
在这里插入图片描述

select usn,slt,seq,state,undoblockstotal,undoblocksdone,xid,rcvservers from v$fast_start_transactions;
USN SLT SEQ STATE UNDOBLOCKSTOTAL UNDOBLOCKSDONE XID RCVSERVERS


    34         24    5044735 RECOVERED                  40861          40861 00220018004CF9FF        256
    45         26    2937596 RECOVERED                  40862          40862 002D001A002CD2FC        256
    45          7    2935629 RECOVERED                  40861          40861 002D0007002CCB4D        256
    46         14    2594590 RECOVERED                  60436          60436 002E000E0027971E        256
    15         19    3116186 RECOVERED                  40863          40863 000F0013002F8C9A        256
    48          9    1713657 RECOVERED                  29744          29744 00300009001A25F9        256
    16         44    3088013 RECOVERED                  16098          16098 0010002C002F1E8D        256
    39         25    5180630 RECOVERED                     18             18 00270019004F0CD6          1
    39         42    5314292 RECOVERED                  40861          40861 0027002A005116F4        256
     7         21    3077967 RECOVERED                  40862          40862 00070015002EF74F        256
    42         24    3950504 RECOVERED                  40861          40861 002A0018003C47A8        256
    43         11    3892882 RECOVERED                  40862          40862 002B000B003B6692        256 
    21         23    3309555 RECOVERED                 112751         112751 0015001700327FF3        256
    10         38    3186672 RECOVERED                  29632          29632 000A002600309FF0        256

14 rows selected.
smon trace文件:

点击(此处)折叠或打开

Dead transaction 0x0020.02f.00471f24 recovered by 128 server(s)
Dead transaction 0x0024.00f.004430af recovered by 1 server(s)
Dead transaction 0x0012.020.002c6126 recovered by 1 server(s)
Dead transaction 0x0025.00a.00416a26 recovered by 1 server(s)
Dead transaction 0x000d.01a.0029c77e recovered by 1 server(s)
Dead transaction 0x0001.019.002a55d8 recovered by 1 server(s)
根据对12/9 12:59和17:30左右时间点的redo进行logminer解析,导致回滚的语句是对表TAB2更新。其中对TAB2的更新触发了trigger。

该trigger更新了表TAB1。

  1. 下面是从17:21~ 17:29对象redo使用排序,其中TAB2有19万条记录更新。

点击(此处)折叠或打开

SEG_NAME CNT
5457509
TAB1 923207


TAB2 190329
2. 其中update语句使用的是同一个xid 0027002A005116F4,这个xid和trace文件中进行recover 事务号一致。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值