闪回事务

闪回事务不支持大对象(LOB)和 XML,不适用于 DDL 也不能跨越 DDL。 DDL 动作在闪回事务查询中甚至不会出现。 闪回事务需要人为提交或者回滚,其本身也一个事务,也可以被闪回。

开启附加日志:

alter database add supplemental log data;
alter database add supplemental log data (primary key) columns;

闪回事务查询:

set lines 1000;
col LOGON_USER for a10;
col TABLE_NAME for a10;
col TABLE_OWNER for a10;
col UNDO_SQL for a20;

select DISTINCT XID,START_TIMESTAMP,COMMIT_TIMESTAMP,LOGON_USER,OPERATION ,TABLE_NAME,TABLE_OWNER,UNDO_SQL 
from FLASHBACK_TRANSACTION_QUERY
where TABLE_NAME='T';

执行事务闪回:

declare
        xids sys.xid_array;
begin
        xids := sys.xid_array('0300040051030000');
        dbms_flashback.transaction_backout(1,xids,options=>dbms_flashback.nocascade);
end;
/

提交事务:

commit;
-- By 许望(RHCA、OCM、VCP)
最后修改:2024 年 02 月 05 日 03 : 33 PM
如果觉得我的文章对你有用,请随意赞赏