oracle23i误删除表(drop table)

来源:这里教程网 时间:2026-03-03 22:58:19 作者:

误删除表(drop table):    使用import工具导入表结构及其数据,但这种方法可能会丢失部分数据。    使用基于时间点的数据库不完全恢复(DBPITR)这种方法可以确保不丢失任何表数据,但是可能会丢失其他表空间事务操作的数据,注意,       DBPITR只适用于ARCHIVELOG模式。    使用基于时间点的表空间不完全恢复(TSPITR)这种方法不仅可以确保不丢失任何表数据,还能确保不丢失其他表空间事务操作的数据,注意,TSPITR只适用于ARCHIVELOG模式。         当执行了truncate table后,会删除表的所有数据,但是会保留表的结构。恢复方法与drop table基本一样。但是注意,使用import导入的时候,表结构还是存在的所以加上参数:ignore=y; dml误操作:    oracle23i使用flashback table语句可以讲表数据恢复到过去的时间点或者过去的scn,注意,如果要使用该特征,那么必须激活表的行移动特征,另外,flashback table 所能恢复的最早的时间受限于初始化参数db_flashback_retention_target.. 示例: 首先执行:alter table emp enable row movement; 然后:update emp set sal=sal*1.1 where deptno=20;  然后:commit; 查询一下结果:select ename,sal from emp where deptno=20;显示已经将sal更改。 现在我们要闪回到某个时间点:flashback table emp to timestamp to_timestamp('2025-05-02 11:20:30','yyyy-mm-dd hh24:mi:ss');   再次查询结果:结果返回那一时间点对应的数据。

相关推荐