今天上午查询一个数据表,数据表为空,可能是其他人误操作把数据文件删了 数据库版本为12c多租户数据库

上午可能是其他同事对一个表进行了清空操作 现在需要进行恢复


数据库版本为12c多租户数据库 把误删的表数据进行恢复到之前的某个时间点 如何操作


1.delete or truncate
2.archive log ?
3.backup?
4.flashback table \database


另外,12c有recover table新特性可以尝试下


应该是truncate 表还在 表数据不在了


备份是利用软件进行备份 恢复难度大 有归档日志


recover table 不能在生产环境操作吗?


官方文档关于 recover table相关的描述
https://docs.oracle.com/database/121/BRADV/rcmresind.htm#BRADV689
先决条件
The target database must be in read-write mode.
The target database must be in ARCHIVELOG mode.
You must have RMAN backups of the tables or table partitions as they existed at the point in time to which you want recover these objects.
To recover single table partitions, the COMPATIBLE initialization parameter for target database must be set to 11.1.0 or higher.
传统方法是使用一个历史的备份,利用归档通过rman进行恢复。
或者使用比如 ODU、dul进行恢复


