oracle更新数据还原,oracle误drop/update操作后的数据恢复测试

oracle误drop/update操作后的数据恢复测试

2019-01-03

编程之家收集整理的这篇文章主要介绍了oracle误drop/update操作后的数据恢复测试,编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1、drop表,如何进行恢复@H_404_2@

代码如下:

create table etl (id number);

insert into etl values (1);

commit;

drop table etl;

如果drop table etl purge --就不能进行恢复@H_404_2@

下面进行表的恢复:@H_404_2@

(1)介绍视图进行恢复:DBA_RECYCLEBIN@H_404_2@

sql> SELECT OBJECT_NAME,ORIGINAL_NAME,CAN_UNDROP,CAN_PURGE FROM DBA_RECYCLEBIN WHERE ORIGINAL_NAME='ETL';

OBJECT_NAME ORIGINAL_NAME CAN CAN

------------------------------ -------------------------------- --- ---

BIN$V0qZnPBKRBiEUAx/MzB8Ww==$0 ETL YES YES

sql> CREATE TABLE ETL AS SELECT * FROM "BIN$V0qZnPBKRBiEUAx/MzB8Ww==$0";

表已创建。

sql> SELECT * FROM ETL;

ID

----------

1

恢复完成.

(2) 无法恢复的情况:drop table etl purge ;@H_404_2@

sql> CREATE TABLE ETL2 (NAME VARCHAR2(10));

表已创建。

sql> INSERT INTO ETL2 VALUES ('TEST');

已创建 1 行。

sql> COMMIT;

提交完成。

sql> DROP TABLE ETL2 PURGE;

表已删除。

sql> SELECT OBJECT_NAME,CAN_PURGE FROM DBA_RECYCLEBIN WHERE ORIGINAL_NAME='ETL2';

未选定行

sql>

2、update 表的恢复@H_404_2@

sql> SELECT SYSDATE FROM DUAL;

SYSDATE

-------------------

2008-11-21 19:45:20

sql> SELECT * FROM ETL;

ID

----------

1

sql> UPDATE ETL SET ID=2;

已更新 1 行。

sql> SELECT * FROM ETL;

ID

----------

2

sql> COMMIT;

提交完成。

create table test_bak

as

select * from test as of TIMESTAMP to_timestamp('20081126 103435','yyyymmdd hh24miss');

表已创建。

sql> SELECT * FROM ETL_BAK;

ID

----------

1

sql>

完成update表的恢复。

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值