将dump文件xid转化为v$transaction xid

select to_number('000a','XXXXX') ,to_number('02d','XXXXX'),to_number('00000687','XXXXXXXXX') from dual;
 
TO_NUMBER('000A','XXXXX') TO_NUMBER('02D','XXXXX') TO_NUMBER('00000687','XXXXXXXX
------------------------- ------------------------ ------------------------------
                       10                       45                           1671
                      
   select * from v$transaction where     xidUSN=10 and     xidSLOT =45 and     xidSQN=1671;

 

如果定位sql ,

 

过下面的语句,可以将dump 文件的xid

转化为FLASHBACK_TRANSACTION_QUERY xid

可以用来定义sql语句。

select upper(substr(substr('&&xid',3,instr('&&xid','.')-3),3,2)||substr(substr('&&xid',3,instr('&&xid','.')-3),1,2)||substr(lpad (substr('&&xid',instr('&&xid','.')+1,instr('&&xid','.',1,2)- instr('&&xid','.',1,1)-1),4,'0'),3,2)||substr(lpad (substr('&&xid',instr('&&xid','.')+1,instr('&&xid','.',1,2)- instr('&&xid','.',1,1)-1),4,'0'),1,2)||substr(lpad(substr('&&xid',instr('&&xid','.',1,2)+1 ),8,'0'),7,2)||substr(lpad(substr('&&xid',instr('&&xid','.',1,2)+1 ),8,'0'),5,2)||substr(lpad(substr('&&xid',instr('&&xid','.',1,2)+1 ),8,'0'),3,2)||substr(lpad(substr('&&xid',instr('&&xid','.',1,2)+1 ),8,'0'),1,2))  from dual;

 

 

用法:

 

SQL> select upper(substr(substr('&&xid',3,instr('&&xid','.')-3),3,2)||substr(sub

str('&&xid',3,instr('&&xid','.')-3),1,2)||substr(lpad (substr('&&xid',instr('&&x

id','.')+1,instr('&&xid','.',1,2)- instr('&&xid','.',1,1)-1),4,'0'),3,2)||substr

(lpad (substr('&&xid',instr('&&xid','.')+1,instr('&&xid','.',1,2)- instr('&&xid'

,'.',1,1)-1),4,'0'),1,2)||substr(lpad(substr('&&xid',instr('&&xid','.',1,2)+1 ),

8,'0'),7,2)||substr(lpad(substr('&&xid',instr('&&xid','.',1,2)+1 ),8,'0'),5,2)||

substr(lpad(substr('&&xid',instr('&&xid','.',1,2)+1 ),8,'0'),3,2)||substr(lpad(s

ubstr('&&xid',instr('&&xid','.',1,2)+1 ),8,'0'),1,2))  from dual;

输入 xid 的值:  0x000a.02d.00000687

原值    1: select upper(substr(substr('&&xid',3,instr('&&xid','.')-3),3,2)||subs

tr(substr('&&xid',3,instr('&&xid','.')-3),1,2)||substr(lpad (substr('&&xid',inst

r('&&xid','.')+1,instr('&&xid','.',1,2)- instr('&&xid','.',1,1)-1),4,'0'),3,2)||

substr(lpad (substr('&&xid',instr('&&xid','.')+1,instr('&&xid','.',1,2)- instr('

&&xid','.',1,1)-1),4,'0'),1,2)||substr(lpad(substr('&&xid',instr('&&xid','.',1,2

)+1 ),8,'0'),7,2)||substr(lpad(substr('&&xid',instr('&&xid','.',1,2)+1 ),8,'0'),

5,2)||substr(lpad(substr('&&xid',instr('&&xid','.',1,2)+1 ),8,'0'),3,2)||substr(

lpad(substr('&&xid',instr('&&xid','.',1,2)+1 ),8,'0'),1,2))  from dual

新值    1: select upper(substr(substr('0x000a.02d.00000687',3,instr('0x000a.02d.

00000687','.')-3),3,2)||substr(substr('0x000a.02d.00000687',3,instr('0x000a.02d.

00000687','.')-3),1,2)||substr(lpad (substr('0x000a.02d.00000687',instr('0x000a.

02d.00000687','.')+1,instr('0x000a.02d.00000687','.',1,2)- instr('0x000a.02d.000

00687','.',1,1)-1),4,'0'),3,2)||substr(lpad (substr('0x000a.02d.00000687',instr(

'0x000a.02d.00000687','.')+1,instr('0x000a.02d.00000687','.',1,2)- instr('0x000a

.02d.00000687','.',1,1)-1),4,'0'),1,2)||substr(lpad(substr('0x000a.02d.00000687'

,instr('0x000a.02d.00000687','.',1,2)+1 ),8,'0'),7,2)||substr(lpad(substr('0x000

a.02d.00000687',instr('0x000a.02d.00000687','.',1,2)+1 ),8,'0'),5,2)||substr(lpa

d(substr('0x000a.02d.00000687',instr('0x000a.02d.00000687','.',1,2)+1 ),8,'0'),3

,2)||substr(lpad(substr('0x000a.02d.00000687',instr('0x000a.02d.00000687','.',1,

2)+1 ),8,'0'),1,2))  from dual

 

UPPER(SUBSTR(SUB

----------------

0A002D0087060000

 

 

SELECT /*+ rule */ UNDO_SQL FROM FLASHBACK_TRANSACTION_QUERY

  WHERE XID = '0A002D0087060000';

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8135069/viewspace-631590/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/8135069/viewspace-631590/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值