阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

使用dbms_transaction来获得事务ID

378次阅读
没有评论

共计 9643 个字符,预计需要花费 25 分钟才能阅读完成。

一般找出当前事务 ID 与回滚段最常见的方法就是执行以下 SQL
SQL> select xidusn, xidslot, xidsqn  from v$transaction, v$session  where saddr=ses_addr;

    XIDUSN    XIDSLOT    XIDSQN
———- ———- ———-
        6        27      9338

而最简单与最容易的方法是使用 dbms_transaction PL/SQL 包。下面使用一个例子来进行说明如何使用 dbms_transaction PL/SQL 包来找出当前事务 ID,并使用 undo header dump 信息来进行验证。
SQL> select dbms_transaction.local_transaction_id from dual;

LOCAL_TRANSACTION_ID
——————————————————————————–

SQL> set transaction read write;

Transaction set.

SQL> select dbms_transaction.local_transaction_id from dual;

LOCAL_TRANSACTION_ID
——————————————————————————–
6.27.9339

6 –> undo segment number(USN) undo 段号
27 –> Transaction slot in the transaction list 事务列表中的事务插槽
9339 –> Sequence number(the number of times the given slot has been used) 序列号 (给定的事务插槽被使用的次数)

上面的事务 ID 可以通过 undo segment 的 undo header dump 信息来进行验证
1. 找到回滚段名
SQL> select * from v$rollname where USN=6;

      USN NAME
———- ——————————
        6 _SYSSMU6_3214712007$

2. 转储回滚段 header
SQL> alter system dump undo header ‘_SYSSMU6_3214712007$’;

System altered.

SQL> select
  2  d.value||’/’||lower(rtrim(i.instance,
  3  chr(0)))||’_ora_’||p.spid||’.trc’ trace_file_name
  4  from (select p.spid
  5  from v$mystat m,
  6  v$session s,v$process p
  7  where m.statistic# = 1 and s.sid = m.sid and p.addr = s.paddr) p,
  8  (select t.instance from v$thread  t,v$parameter v
  9  where v.name = ‘thread’ and
 10  (v.value = 0 or t.thread# = to_number(v.value))) i,
 11  (select value from v$parameter
 12  where name = ‘user_dump_dest’) d;

TRACE_FILE_NAME
——————————————————————————–
/u01/app/Oracle/diag/rdbms/jyrac/jyrac1/trace/jyrac1_ora_16785.trc

跟踪文件信息如下:
Unix process pid: 16785, image: oracle@jyrac1 (TNS V1-V3)

*** 2016-04-28 09:10:02.380
*** SESSION ID:(147.9205) 2016-04-28 09:10:02.380
*** CLIENT ID:() 2016-04-28 09:10:02.380
*** SERVICE NAME:(SYS$USERS) 2016-04-28 09:10:02.380
*** MODULE NAME:(sqlplus@jyrac1 (TNS V1-V3)) 2016-04-28 09:10:02.380
*** ACTION NAME:() 2016-04-28 09:10:02.380
 
 
********************************************************************************
Undo Segment:  _SYSSMU6_3214712007$ (6)
********************************************************************************
  Extent Control Header
  —————————————————————–
  Extent Header:: spare1: 0      spare2: 0      #extents: 3      #blocks: 143 
                  last map  0x00000000  #maps: 0      offset: 4080 
      Highwater::  0x00c00aaa  ext#: 2      blk#: 42    ext size: 128 
  #blocks in seg. hdr’s freelists: 0   
  #blocks below: 0   
  mapblk  0x00000000  offset: 2   
                  Unlocked
    Map Header:: next  0x00000000  #extents: 3    obj#: 0      flag: 0x40000000
  Extent Map
  —————————————————————–
  0x00c000d1  length: 7   
  0x00c00108  length: 8   
  0x00c00a80  length: 128 
 
 Retention Table
  ———————————————————–
 Extent Number:0  Commit Time: 1461797986
 Extent Number:1  Commit Time: 1461800269
 Extent Number:2  Commit Time: 1461796031
 
  TRN CTL:: seq: 0x0c6a chd: 0x001e ctl: 0x001f inc: 0x00000000 nfb: 0x0000
            mgc: 0xb000 xts: 0x0068 flg: 0x0001 opt: 2147483646 (0x7ffffffe)
            uba: 0x00c00aa6.0c6a.18 scn: 0x0000.014ce06a
Version: 0x01
  FREE BLOCK POOL::
    uba: 0x00000000.0c6a.17 ext: 0x2  spc: 0x128c 
    uba: 0x00000000.0c6a.02 ext: 0x2  spc: 0x1ace 
    uba: 0x00000000.0c6a.14 ext: 0x2  spc: 0x13fe 
    uba: 0x00000000.0bc3.01 ext: 0x2  spc: 0x1f84 
    uba: 0x00000000.0000.00 ext: 0x0  spc: 0x0   
  TRN TBL::
 
  index  state cflags  wrap#    uel        scn            dba            parent-xid    nub    stmt_num    cmt
  ————————————————————————————————
  0x00    9    0x00  0x2471  0x001a  0x0000.014ce250  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804655
  0x01    9    0x00  0x2479  0x0008  0x0000.014ce7f8  0x00c00aa9  0x0000.000.00000000  0x00000001  0x00000000  1461805256
  0x02    9    0x00  0x2476  0x000c  0x0000.014ce44e  0x00c00aa6  0x0000.000.00000000  0x00000001  0x00000000  1461805136
  0x03    9    0x00  0x2472  0x000b  0x0000.014ce2d5  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804775
  0x04    9    0x00  0x2477  0x0000  0x0000.014ce210  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804595
  0x05    9    0x00  0x2478  0x0017  0x0000.014ce3d0  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461805015
  0x06    9    0x00  0x2478  0x0018  0x0000.014ce4db  0x00c00aa6  0x0000.000.00000000  0x00000001  0x00000000  1461805245
  0x07    9    0x00  0x2479  0x000e  0x0000.014ce353  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804894
  0x08    9    0x00  0x2476  0x0016  0x0000.014ce815  0x00c00aa9  0x0000.000.00000000  0x00000001  0x00000000  1461805256
  0x09    9    0x00  0x247e  0x0012  0x0000.014ce74b  0x00c00aa9  0x0000.000.00000000  0x00000001  0x00000000  1461805247
  0x0a    9    0x00  0x2477  0x001d  0x0000.014ce10d  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804355
  0x0b    9    0x00  0x247a  0x0007  0x0000.014ce326  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804835
  0x0c    9    0x00  0x2471  0x000f  0x0000.014ce4d9  0x00c00aa9  0x0000.000.00000000  0x00000001  0x00000000  1461805245
  0x0d    9    0x00  0x2473  0x001c  0x0000.014ce284  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804715
  0x0e    9    0x00  0x2478  0x0011  0x0000.014ce358  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804894
  0x0f    9    0x00  0x2470  0x0006  0x0000.014ce4da  0x00c00aaa  0x0000.000.00000000  0x00000003  0x00000000  1461805245
  0x10    9    0x00  0x2477  0x0001  0x0000.014ce7e8  0x00c00aa9  0x0000.000.00000000  0x00000001  0x00000000  1461805256
  0x11    9    0x00  0x2472  0x0005  0x0000.014ce38a  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804954
  0x12    9    0x00  0x2478  0x0010  0x0000.014ce7d8  0x00c00aa9  0x0000.000.00000000  0x00000001  0x00000000  1461805256
  0x13    9    0x00  0x2473  0x0003  0x0000.014ce2c0  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804775
  0x14    9    0x00  0x247a  0x0004  0x0000.014ce1a2  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804474
  0x15    9    0x00  0x2476  0x000a  0x0000.014ce106  0x00000000  0x0000.000.00000000  0x00000000  0x00000000  1461804355
  0x16    9    0x00  0x246d  0x001f  0x0000.014ce867  0x00000000  0x0000.000.00000000  0x00000000  0x00000000  1461805315
  0x17    9    0x00  0x2473  0x0019  0x0000.014ce3f4  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461805040
  0x18    9    0x00  0x247a  0x0009  0x0000.014ce5a4  0x00c00aa9  0x0000.000.00000000  0x00000001  0x00000000  1461805245
  0x19    9    0x00  0x2475  0x0002  0x0000.014ce441  0x00c00aa6  0x0000.000.00000000  0x00000002  0x00000000  1461805135
  0x1a    9    0x00  0x2478  0x000d  0x0000.014ce254  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804655
  0x1b  10    0x80  0x247b  0x0002  0x0000.014ce8fc  0x00000000  0x0000.000.00000000  0x00000000  0x00000000  0
  0x1c    9    0x00  0x2477  0x0013  0x0000.014ce2b7  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804775
  0x1d    9    0x00  0x2474  0x0014  0x0000.014ce155  0x00c00aa5  0x0000.000.00000000  0x00000001  0x00000000  1461804415
  0x1e    9    0x00  0x246d  0x0021  0x0000.014ce079  0x00c00aa3  0x0000.000.00000000  0x00000001  0x00000000  1461804174
  0x1f    9    0x00  0x2477  0xffff  0x0000.014ce8de  0x00c00aa6  0x0000.000.00000000  0x00000001  0x00000000  1461805376
  0x20    9    0x00  0x2478  0x0015  0x0000.014ce0dc  0x00000000  0x0000.000.00000000  0x00000000  0x00000000  1461804295
  0x21    9    0x00  0x2479  0x0020  0x0000.014ce0a7  0x00c00aa3  0x0000.000.00000000  0x00000001  0x00000000  1461804235
  EXT TRN CTL::
  usn: 6
  sp1:0x00000000 sp2:0x00000000 sp3:0x00000000 sp4:0x00000000
  sp5:0x00000000 sp6:0x00000000 sp7:0x00000000 sp8:0x00000000
  EXT TRN TBL::
  index  extflag    extHash    extSpare1  extSpare2
  —————————————————
  0x00  0x00000000 0x00000000 0x00000000  0x00000000
  0x01  0x00000000 0x00000000 0x00000000  0x00000000
  0x02  0x00000000 0x00000000 0x00000000  0x00000000
  0x03  0x00000000 0x00000000 0x00000000  0x00000000
  0x04  0x00000000 0x00000000 0x00000000  0x00000000
  0x05  0x00000000 0x00000000 0x00000000  0x00000000
  0x06  0x00000000 0x00000000 0x00000000  0x00000000
  0x07  0x00000000 0x00000000 0x00000000  0x00000000
  0x08  0x00000000 0x00000000 0x00000000  0x00000000
  0x09  0x00000000 0x00000000 0x00000000  0x00000000
  0x0a  0x00000000 0x00000000 0x00000000  0x00000000
  0x0b  0x00000000 0x00000000 0x00000000  0x00000000
  0x0c  0x00000000 0x00000000 0x00000000  0x00000000
  0x0d  0x00000000 0x00000000 0x00000000  0x00000000
  0x0e  0x00000000 0x00000000 0x00000000  0x00000000
  0x0f  0x00000000 0x00000000 0x00000000  0x00000000
  0x10  0x00000000 0x00000000 0x00000000  0x00000000
  0x11  0x00000000 0x00000000 0x00000000  0x00000000
  0x12  0x00000000 0x00000000 0x00000000  0x00000000
  0x13  0x00000000 0x00000000 0x00000000  0x00000000
  0x14  0x00000000 0x00000000 0x00000000  0x00000000
  0x15  0x00000000 0x00000000 0x00000000  0x00000000
  0x16  0x00000000 0x00000000 0x00000000  0x00000000
  0x17  0x00000000 0x00000000 0x00000000  0x00000000
  0x18  0x00000000 0x00000000 0x00000000  0x00000000
  0x19  0x00000000 0x00000000 0x00000000  0x00000000
  0x1a  0x00000000 0x00000000 0x00000000  0x00000000
  0x1b  0x00000000 0x00000000 0x00000000  0x00000000
  0x1c  0x00000000 0x00000000 0x00000000  0x00000000
  0x1d  0x00000000 0x00000000 0x00000000  0x00000000
  0x1e  0x00000000 0x00000000 0x00000000  0x00000000
  0x1f  0x00000000 0x00000000 0x00000000  0x00000000
  0x20  0x00000000 0x00000000 0x00000000  0x00000000
  0x21  0x00000000 0x00000000 0x00000000  0x00000000

从 Undo Segment: _SYSSMU6_3214712007$ (6) 可以知道回滚段号是 6, 找到 state 为 10 的记录
 index  state cflags  wrap#    uel        scn            dba            parent-xid    nub    stmt_num    cmt
 ————————————————————————————————
 0x1b  10    0x80  0x247b  0x0002  0x0000.014ce8fc  0x00000000  0x0000.000.00000000  0x00000000  0x00000000  0

其中 0x1b=27
SQL> select to_number(‘1b’,’xxx’) from dual;
 
TO_NUMBER(‘1B’,’XXX’)
———————
27

0x247b=9339
SQL> select to_number(‘247b’,’xxxx’) from dual;
 
TO_NUMBER(‘247B’,’XXXX’)
————————
                    9339

从上面的信息可以看到与我们使用 dbms_transaction PL/SQL 包所获得的事务 ID 信息一致。

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-05/131233.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计9643字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19348
评论数
4
阅读量
7805547
文章搜索
热门文章
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
星哥带你玩飞牛NAS-5:飞牛NAS中的Docker功能介绍

星哥带你玩飞牛NAS-5:飞牛NAS中的Docker功能介绍

星哥带你玩飞牛 NAS-5:飞牛 NAS 中的 Docker 功能介绍 大家好,我是星哥,今天给大家带来如何在...
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
使用1Panel面板搭建属于你的AI项目环境

使用1Panel面板搭建属于你的AI项目环境

使用 1Panel 面板搭建属于你的 AI 项目环境 在 AI 项目越来越火的今天,很多朋友都想自己动手搭建一...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板 前言 大家好,我是星哥。星哥发现很多新手刚接触服务器时,都会被“选购...
还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手! 前言 对于个人开发者、建站新手或是想搭建测试站点的从业者...
浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍 前言 在 AI 自动化快速发展的当下,浏览器早已不再只是...
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸 前言 作为天天跟架构图、拓扑图死磕的...