事務標識(xid)解析
相關資料中說明事務標識的構成方式為xid=usn.slot.(sqn+1),這三部分組合起來唯一標識系統內的事務。
1,透過xid獲取usn/slot/sqn方式如下:
注意:
*位元組序問題;
*sqn沒有+1
select xid,xidusn,xidslot,xidsqn from v$transaction;
0A001B0034DE0000 10 27 56884
with v as(select '08002A0071CA0000' xid from dual)
select to_number(substr(v.xid,3,2)||substr(v.xid,1,2),'xxxx') usn,
to_number(substr(v.xid,7,2)||substr(v.xid,5,2),'xxxx') slot,
to_number(substr(v.xid,15,6)||substr(v.xid,13,2)||substr(v.xid,11,2)||substr(v.xid,9,2),'xxxxxxxxxx') sqn
from v;
USN SLOT SQN
10 27 56884
2,在v$lock中,使用id1/id2來標識事務。其中:id1的高四位元組為回滾段號,低四位元組為槽號,id2為序號,分別與v$transaction中XIDUSN, XIDSLOT, XIDSQN對應。
select sid,id1,id2 from v$lock where type='TX';
81 1572909 664
with v as (select 1572909 id1,664 id2 from dual)
select trunc(id1/power(2,16)) rbs1, --截斷獲取高4位元組
bitand(id1,to_number('ffff0000','xxxxxxxx'))/power(2,16) rbs2, --按位與獲取高4位元組
to_number(substr(TRIM(to_char(1572909, 'xxxxxxxx')),
1,
4 - (8 - length(TRIM(to_char(id1, 'xxxxxxxx'))))) ,
'xxxx') rbs3 --直接擷取高4位元組
,bitand(id1,to_number('ffff','xxxx')) slot1, ---按位與獲取低4位元組
mod(id1,power(2,16)) slot2, --求餘獲取低4位元組
to_number(substr(TRIM(to_char(1572909, 'xxxxxxxx')),
5 - (8 - length(TRIM(to_char(id1, 'xxxxxxxx')))),
4),
'xxxx') slot3,--直接擷取低4位元組
id2 from v;
RBS1 RBS2 RBS3 SLOT1 SLOT2 SLOT3 ID2
24 24 24 45 45 45 664
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/18922393/viewspace-707946/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL事務(一)認識事務MySql
- 解析MYSQL BINLOG 二進位制格式(7)--Xid_log_event/XID_EVENTMySql
- PostgreSQL XID與virtual XID區別SQL
- Spring 事務原始碼解析Spring原始碼
- MongoDB 4.0 事務實現解析MongoDB
- Spring事務管理全解析Spring
- 事務知識點總結
- 分散式事務 TCC-Transaction 原始碼解析 —— 事務儲存器分散式原始碼
- MyBatis 事務管理解析:顛覆你心中對事務的理解!MyBatis
- Spring事務原理完全解析Spring
- MongoDB4.0事務實現解析MongoDB
- 事務管理最佳實踐全面解析
- 事務相關知識集錦
- oracle事務知識點小結Oracle
- 阿里分散式事務框架 GTS 全解析阿里分散式框架
- 解析 RocketMQ 業務訊息——“事務訊息”MQ
- Spring事務管理—aop:pointcut expression解析SpringExpress
- MySQL 儲存過程/遊標/事務MySql儲存過程
- MySQL-13.事務基礎知識MySql
- MySql 三大知識點——索引、鎖、事務!MySql索引
- 認識 MongoDB 4.0 的新特性——事務(Transactions)MongoDB
- MySQL 事務隔離級別解析和實戰MySql
- 解析Spring Boot中的事務管理機制Spring Boot
- 完整恢復模式下使用標記的事務模式
- 深入淺出事務的本質,附 OceanBase 事務解析14問!
- 一文帶你認識Spring事務Spring
- MySQL事務學習筆記(二) 相識篇MySql筆記
- 十、Redis事務、事務鎖Redis
- Oracle vs PostgreSQL,研發注意事項(3)- 事務回滾之UPDATE操作解析OracleSQL
- 事務提交時itl上flag標記U測試!
- [FFMpeg] 非標準解析度視訊Dump YUV注意事項
- 分散式事務之Spring事務與JMS事務(二)分散式Spring
- c++ string 識別標誌位並解析標誌位後面的字元C++字元
- 什麼是事務、事務特性、事務隔離級別、spring事務傳播特性?Spring
- oracle事務隔離級別transaction isolation level初識Oracle
- MySql 三大知識點,索引、鎖、事務,原理分析MySql索引
- 事務
- Spring Series---事務中JDBC是否自動提交解析SpringJDBC