• 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全量备份
     
    
    

  • 相关阅读:
    设计模式——单例模式
    设计模式——工厂模式在开发中的应用(简单计算器)
    设计模式——简单工厂模式—工厂方法模式—抽象工厂模式(比较)
    设计模式——抽象工厂模式
    设计模式——工厂方法模式
    设计模式——简单工厂
    Win7使用初体验
    上传文件夹
    java上传文件夹到oss
    java+上传一个文件夹
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/14519769.html
Copyright © 2020-2023  润新知