首先用u1用户构造一个事务:
SQL> show user
USER 为 "U1"
SQL> update t1 set id = 1 where name = 'a';
已更新 1 行。
用sys用户查看:
SQL> show user
USER 为 "SYS"
SQL> select s.username,t.status from v$transaction t,v$session s where t.addr = s.taddr;
USERNAME STATUS
------------------------------ ----------------
U1 ACTIVE
V$SESSION taddr ,paddr 分别对应 v$transaction addr,V$PROCESS addr
v$transaction的used_ublk可以查看进度
used_ublk 在做回滚时有多少块在使用
used_now 现在有多少块在使用
used_later 在60秒后有多少块使用
(used_later /used_ublk - used_later ) = ???多少时间rollback