-- 查看當前交易資訊
SELECT xidusn, xidslot, xidsqn, ubablk, ubafil, ubarec FROM v$transaction;
-- 依 USN 查回滾段名稱
SELECT usn, name FROM v$rollname WHERE usn = :usn;
-- Dump 回滾段標頭查看交易列表
ALTER SYSTEM DUMP UNDO HEADER '_SYSSMU1_123456789$';
-- Dump 回滾區塊查看前鏡像
ALTER SYSTEM DUMP DATAFILE :file BLOCK :block;
INDEX STATE CFLAGS WRAP# UEL SCN DBA PARENT-XID NUB STMT_NUM CMT
0x2c 9 0x00 0x1ae5 0x002f 0x0000.106d1cbd 0x00804775 0x0000.000.00000000 0x00000001 0x00000000 1259981046
0x2d 10 0x80 0x1add 0x0006 0x0000.10713a25 0x00804778 0x0000.000.00000000 0x00000001 0x00000000 0
STATE = 10 代表作用中交易。Oracle 內部以特殊編碼儲存數值,可用 DUMP() 觀察:
SELECT DUMP(1) FROM dual; -- Typ=2 Len=2: 193,2
SELECT DUMP(123456.789) FROM dual; -- Typ=2 Len=6: 195,13,35,57,79,91
SELECT DUMP(-123456.789) FROM dual;-- Typ=2 Len=7: 60,89,67,45,23,11,102