最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
oracle中通过undo record找到对应回滚对象信息
时间:2022-06-29 09:35:49 编辑:袖梨 来源:一聚教程网
通过下面的语句查到回滚的事务:
select * from v$fast_start_transactions;
或者
select * from x$ktuxe where KTUXECFL='DEAD' AND KTUXESTA!='INACTIVE'
根据上面的语句,我们可以查到事务的undo的segment id(USN或者KTUXEUSN),undo的slot(SLT或者KTUXESLT),和undo的sequence(SEQ或者KTUXESQN)。
根据USN,我们可以查到undo segment:
select * from v$rollname where usn=xxx
根据上面的语句,我们可以dump出undo block:
alter system dump undo block "
如
alter system dump undo block "_SYSSMU33$" XID 33 56 7463;
然后根据dump出来的trace file,可以判断object number(objn)或者object id(objd)
cat xxx.trc |grep objn
* Rec #0x45 slt:0x1f objn:223312(0x00092c2a) objd:223312 tblspc:20(0x00000014)
* Rec #0x44 slt:0x1f objn:223312(0x00092c2a) objd:223312 tblspc:20(0x00000014)
* Rec #0x43 slt:0x1f objn:223312(0x00092c2a) objd:223312 tblspc:20(0x00000014)
* Rec #0x42 slt:0x1f objn:223312(0x00092c2a) objd:223312 tblspc:20(0x00000014)
* Rec #0x41 slt:0x1f objn:223312(0x00092c2a) objd:223312 tblspc:20(0x00000014)
* Rec #0x40 slt:0x1f objn:223312(0x00092c2a) objd:223312 tblspc:20(0x00000014)
* Rec #0x3f slt:0x1f objn:223312(0x00092c2a) objd:223312 tblspc:20(0x00000014)
...
此时,我们根据object id,可以在数据库里面找到回滚的object的对象:
select * from dba_objects where object_id='223312';
相关文章
- 《使命召唤:黑色行动6》战役双倍下注任务攻略 11-05
- 《使命召唤:黑色行动6》战役敏锐的眼睛任务攻略 11-05
- 《使命召唤:黑色行动6》战役请勿吸烟任务攻略 11-05
- 《怪物猎人:荒野》游戏气候介绍 11-05
- 《怪物猎人:荒野》丰饶期气候介绍 11-05
- 《龙腾世纪:影障守护者》游侠不同职业区别介绍 11-05