ORACLE FLASHBACK DROP知识整理
ORACLE FLASHBACK DROP知识整理
1) 不要求停机,也不需要备份。
2) 无需配置,可以通过权限禁用
3) 只有本地管理(非字典管理)的非SYSTEM表空间的数据才会进入回收站,也才能使用flashback drop
4) 专门用于DROP命令,只能应用于表,被DROP的表可以在回收站被查看到(
[sql]
SQL>show recyclebin;//查看
)。无法闪回TRUNCATE,被PURGE的表无法闪回。
5) 不能返回物理讹误,只能返回用户错误导致的逻辑错误。
6) 不能保证成功。删除后越早FLASHBACK,就越可能成功。
7) 同时被闪回的还有索引、触发器、授权、唯一约束、非空约束。但是外键约束无法被恢复。因为外键不是被重命名,而是被真正的删除掉了。设表A含有索引或者trigger或者约束I,如果先删除I,再删除A,则当falshback drop A 时,索引或者trigger或者约束不会被恢复
8) 使用drop user xxx cascade的表无法通过FLASHBACK DROP闪回。
[sql] SQL> select * from knight.books;//初始状态 ID NAME PRICE ------------------ ---------- 200 WEBWORK 299.9 201 PMP 56.99 1 STRUTS2 199 300 DB2 299 2 AIX 50.5 3 NETWORK 125.89 4 JAVA 88.99 5 JQUERY 102.98 8 rowsselected. [sql] SQL> drop table knight.books; //删除 Table dropped. [sql] SQL> select * from knight.books; //已经查不到了 select * from knight.books * ERROR at line1: ORA-00942:table or view does not exist [sql] SQL> flashback table knight.books to before drop rename to newbooks; //开始闪回,并重命名 Flashback complete. [sql] SQL> select * from knight.books; //旧名称查不到 select * from knight.books * ERROR at line1: ORA-00942:table or view does not exist [sql] SQL> select * from knight.newbooks; //新名称查到 IDNAME PRICE ------------------ ---------- 200 WEBWORK 299.9 201 PMP 56.99 1 STRUTS2 199 300 DB2 299 2 AIX 50.5 3 NETWORK 125.89 4 JAVA 88.99 5 JQUERY 102.98 8 rows selected. [sql] SQL> drop table knight.newbooks purge; //使用PURGE Table dropped. [sql] SQL> flashback table knight.newbooks to before drop rename to secondbooks; //无法闪回了 flashback table knight.newbooks to before drop rename to secondbooks * ERROR at line1: ORA-38305:object not in RECYCLE BIN
(完)