PLSQL Drop 表之后恢复

深入理解数据库原理
以实战为基础,以数据库原理为基础,结合实战,深入理解数据库原理。
wangxiaoming

 

 

不小心在PLSQL中将一张表删掉了,并且都不知道自己删的是哪张表,一时大为紧张,寻思了一下找到了一种恢复误删除表的方法。

1、查看你删除的是哪张表:

       select * from user_recyclebin where DROPTIME >'2013-09-02 00:00:00';

我们会看到我们删除的是ASS_REQ_LOG_STAT_BAK表,这下松了一口气,原来是它,还是张备份表。

2、那还是把它恢复过来吧:

      我们从上条查询语句中得到一个OBJECT_NAME这是有用的,下面我们就使用它来恢复表:
   

  flashback Table "BIN$5WCRYXHwI6/gQBKsPzBBtw==$0" to before drop

就这样,大功告成。不禁感叹Oracle的回收站还是很有用的。

3、如果是删了或修改里面的数据,可以先建立一个快表将删除修改之前状态的数据找回到这个表中:

CREATE TABLE QUICK_TABLE AS
SELECT * FROM TABLE_NAME AS OF TIMESTAMP SYSDATE-1/24 (一小时前的),减去的时间可以自己定 如:select * from TABLE_NAME AS OF TIMESTAMP (SYSTIMESTAMP - INTERVAL '1' MINUTE)

 

4、关于数据库的回收站:

select * from user_recyclebin t where t.TYPE='TABLE'   --可以看到历史对数据库表、索引等的操作,进而实现闪回。

 

wangxiaoming CSDN认证博客专家 架构 Spring Boot Redis
博客是很好的总结和记录工具,如果有问题,来不及回复,关注微信公众号:程序员开发者社区,获取我的联系方式,向我提问,也可以给我发送邮件,联系 1275801617@qq.com
©️2020 CSDN 皮肤主题: Age of Ai 设计师: meimeiellie 返回首页
实付19.89元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值