一:表的恢复 SELECT * FROM RECYCLEBIN ORDER BY DROPTIME DESC 2.执行表的恢复 FLASHBACK TABLE TABLE_NAME TO BEFORE DROP; 二:表数据恢复 对误删的表记录,只要没有 TRUNCATE 语句,就可以根据事务的提交时间进行选择恢复,一般步骤有: SELECT * FROM FLASHBACK_TRANSACTION_QUERY WHERE TABLE_NAME='TEST'; 2、执行表记录恢复 SELECT * FROM TABLE_NAME AS OF TIMESTAMP TO_TIMESTAMP(time,'yyyy-mm-dd hh24:mi:ss'); --time指某个时间点 如: SELECT * FROM SCOTT.TEST AS OF TIMESTAMP TO_TIMESTAMP('2009-12-11 20:53:57','yyyy-mm-dd hh24:mi:ss'); 若有数据,恢复极为简单了,语句为 FLASHBACK TABLE TABLE_NAME TO TIMESTAMP TO_TIMESTAMP(TIME,'yyyy-mm-dd hh24:mi:ss'); 如: FLASHBACK TABLE SCOTT.TEST TO TIMESTAMP TO_TIMESTAMP('2009-12-11 20:47:30','yyyy-mm-dd hh24:mi:ss'); 注意: ALTER TABLE TABLE_NAME ENABLE ROW MOVEMENT; 这个命令的作用是,允许Oracle 修改分配给行的rowid。 转自:http://www.cnblogs.com/vipsoft/archive/2012/12/19/2825312.html |
|
来自: Breeze的图书馆 > 《oracle》