ITPub博客

首页 > 数据库 > Oracle > Flashback Database的典型步骤

Flashback Database的典型步骤

原创 Oracle 作者:itpub110 时间:2009-06-22 18:36:45 0 删除 编辑

基本原理:

闪回日志记录了发生变更的数据块的变更前镜像.闪回时用闪回日志中的数据块替换现有数据文件中的数据块.


限制:
1. 数据文件不能损坏或者丢失

2. 不能跨越一个restore controlfile或者 re-create controlfile操作


步骤:


1.确定闪回点


SELECT OLDEST_FLASHBACK_SCN, OLDEST_FLASHBACK_TIME
FROM V$FLASHBACK_DATABASE_LOG;

SELECT CURRENT_SCN
FROM V$DATABASE

SELECT NAME, SCN, TIME, DATABASE_INCARNATION#,
GUARANTEE_FLASHBACK_DATABASE
FROM V$RESTORE_POINT
WHERE GUARANTEE_FLASHBACK_DATABASE='YES';


2. shutdown and mount

SHUTDOWN IMMEDIATE;
STARTUP MOUNT;


3. 执行闪回操作
flashback database to scn 46963
flashback database to timestamp to_date('2009-06-22 17:49:06','yyyy-mm-dd hh24:mi:ss');
flashback database to restore point rs_before_changes;

flashback database to before scn 46963
flashback database to before timestamp to_date('2009-06-22 17:49:06','yyyy-mm-dd hh24:mi:ss');
flashback database to before resetlogs;


4. 检查一下

alter database open read only;
-do some check here

5. 如果一切OK, 那么可以

(1) resetlogs and open

shutdown immediate
startup mount
alter database open resetlogs;

(2) 用expdp导出损坏的数据,然后:

recover database;


6.如果发觉问题,那么可以:

(1)回滚到一个更老的时间点:

flashback database to scn 42963;

(2)向前滚到指定时间点:

recover database until scn 56963;

(3)完全前滚

recover database;

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/100682/viewspace-1023394/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-06-27

  • 博文量
    41
  • 访问量
    228484