Oracle:误删表或误删数据的恢复操作步骤

Oracle:误删表

对误删的表,一般只要没有使用PURGE永久删除,一般可以从flash back区将误删的表恢复回来;表中的数据会随着表的恢复而恢复

第一步:从flash back 区找到被误删的表 

select * from recyclebin t where t.original_name = tableName

第二步:恢复误删的表

flashback table tableName to before drop 

Oracle:误删数据

对误删的表数据,只要不是执行truncate语句,就可以根据事务提交时间进行选择恢复

1:查询flashback_transaction_query表,

select * from flashback_tracnsaction_query where table_name = tableName;

2:根据时间进行查询,

select * from tableName as of timestamp to_timestamp(time,'yyyy-mm-dd hh24:mi:ss')

3:恢复数据

flashback table tableName to timestamp to_timestamp(time,'yyyy-mm-dd hh24:mi:ss')

alter table testvarchar enable row movement;

允许Oracle修改分配给每一行数据的rowid;在Oracle中每一行数据都有一个独有的rowdid

闪回表处理会对表进行delete操作,并且重新插入行,这样就会为这些数据分配一个新的rowid;要支持闪回就必须运行Oracle执行这个操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值