oracle基础~rman恢复篇

一 基于时间点/SCAN的不完全恢复
  恢复场景 单表被drop 或者大量数据被整改  也可以使用回收站功能 对于drop/delete
  scan 查询 select current_scn from v$database
  1 启动数据库到MOUNT状态,然后查看当前的INCARNATION号
  2 可以通过 RESET DATABASE TO INCARNATION <INCARNATION号> 进行重置
  3 RMAN 执行以下
    RUN {  allocate channl a1 type disk ;SET UNTIL TIME "to_date('2014-01-17 09:54:33','yyyy-mm-dd hh24:mi:ss')"/set until scan number; RESTORE DATABASE; RECOVER DATABASE; }
    ALTER DATABASE OPEN RESETLOGS;
总结
 1 需要有一个当前或者最新的全量备份
 2 需要有回滚时间点之前的归档日志
 3 不完全恢复后要进行全量的备份
二 恢复数据
  1  数据文件
   在线 open状态
  alter database datafile number offline;
  restore datafile number;rman
  recover datafile number;
  alter database datafile nummber online
  离线 mount状态  
  restore datafile number;rman
  recover datafile number;
  alter database open
2 数据表空间
  在线open状态/离线状态
  不能离线如下表空间(system undo tablespace temporary tablespace)
  alter database datafile(多个)  number offline;
  restore tablespace  name; rman
  recover tablesplace name
3 系统表空间 需要重启
   只能离线进行恢复
    restore datafile number;rman
    recover datafile number;     
4 丢失控制文件 涉及到控制文件的恢复必须都要重启
   0  关闭数据库
   1 startup force nomount;
   2 restore controlfile from autobackup(从自动备份中恢复) rman
   3 alter database mount
   4 recover database 由于控制文件是老的 所以recover需要做全局一致性恢复
   5  alter database open resetlogs  不完全恢复
  6  在临时表空间中添加临时文件
三  异地全量恢复步骤
    要确保数据目录都相同
     1 alter database mount;
     2 restore database; 恢复数据文件
     3 recover database; 恢复归档日志
     4 alter database open resetlogs 打开数据库,重新应用redo计数 
四  存储损坏 恢复到异目录 保持原数据不变
    0 startup 启动到nomount
    1 set dbid= ''  根据备份内容查找
    2 restore controlfile to "new_dir" from "backup_dir"
    3  alter system control_files="new_dir" scope=spfile
    4 run {
       set newname  for datafile "old_dir' to 'new_dir';
       restore database;
       switch datafile all;
     }
   5 alter database backup controlfile to trace  as 'a.txt' 导出控制文件
   6 修改a.txt相关路径内容 复制 然后执行 重建控制文件
   7  recover database using backup controlfile
   8   ALTER DATABASE OPEN RESETLOGS;
 
 五 总结
    所有恢复场景的前提都是要有一个最新的RMAN全量备份
 

原文地址:https://www.cnblogs.com/danhuangpai/p/14519769.html