ORACLE·并发控制机制——时间戳方法

时间戳方法的应用

数据表DELETE以后,在有日志的情况下,恢复数据:
1、查询数据库当前时间

SELECT TO_CHAR(SYSTEM,'YYYY-MM-DD hh24:mi:ss') 
FROM DUAL;

2、查询数据库时间点之前的数据

SELECT * 
FROM <表名> 
AS OF TIMESTAMP TO_TIMESTAMP('2022-04-01 23:09:03','YYYY-MM-DD HH24:MI:SS');
--如果没有数据,将时间继续提前。

3、恢复数据

FLASHBACK TABLE <表名> 
AS OF TIMESTAMP TO_TIMESTAMP('2022-04-01 22:30:11','YYYY-MM-DD HH24:MI:SS')
--数据成功恢复

注意事项:
时间戳恢复数据,可能会报错。比如:ORA-08189 :未启动行移动功能,不能闪回表。可如下操作:

ALTER TABLE <表名> ENABLE ROW MOVEMENT;
--之后再次执行上面的SQL语句即可。

文章参考:https://blog.csdn.net/Liamcsl/article/details/114198102


版权声明:本文为qq_43118674原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。