oracle不小心删除了一些数据,没关系 ,有flashback ,!

只能在sqlplus 中执行! 闪回只能对dml语句有用 ddl无效!
1.查询是否打开了闪回功能
SQL> select flashback_on,force_logging from V$database;
FLA FOR
--- ---
NO NO
SQL> alter database flashback on;
alter database flashback on
*
第 1 行出现错误:
ORA-38759: 数据库必须以 EXCLUSIVE 方式装载并且不能打开。

2.打开闪回功能:
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> connect sys/test as sysdba;
已连接到空闲例程。
SQL> startup mount;
ORACLE 例程已经启动。
Total System Global Area 171966464 bytes
Fixed Size 787988 bytes
Variable Size 145488364 bytes
Database Buffers 25165824 bytes
Redo Buffers 524288 bytes
数据库装载完毕。
SQL> alter database flashback on;
数据库已更改。
SQL> startup
ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它
SQL> alter database open;
数据库已更改。
3.查询当前的SCN,记录并测试。
select current_scn
from v$database; 13806079
select *
from flash_recovery
update flash_recovery set score='111';
执行
flashback table flash_recovery to scn 13806079 时出错,需打开表的row movement 功能。
alter table flash_recovery enable row movement;
再次执行 flashback table flash_recovery to scn 13806079
4,使用时间标签恢复
flashback table flash_recovery to timestamp to_timestamp(to_date('2011/05/11:12:00:00','yyyy/mm/dd:hh24:mi:ss'));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值