zoukankan      html  css  js  c++  java
  • oracle rman catalog备份和恢复

    1.丢失控制文件
        
      启动数据库至nomount状态:restore controlfile from autobackup/restore controlfile from '+data/backup/contrlbak/...'
     
      ->alter database mount->open;


    2.误删数据文件
     
      启动至mount状态->alter database datafile 7 offline->alter database open->restore datafile 7->recover datafile 7->alter database datafile online;

    3.丢失参数文件

      此时参数文件丢失,catalog 中根据DBID识别注册数据库,此时无法识别.

      export ORACLE_SID=orcl1->rman target/->restore spfile from '+data/autobackup/2015_11_27/s_896863604.1824.896863605'

      ->shutdown immediate;

      然后可以连接catalog再进行其它恢复,最后必须执行restore database和recover database,最后alter database open resetlogs才能open数据库。


    4.recover database定义

      recover database,是做的完全恢复,也就是说日志文件归档的和在线日志必须完好无损,还有数据文件,控制文件都准备齐全才可!如果有在线日志

     损坏,或者归档日志缺失的话,就无法执行完全恢复,需要不完全恢复了!recover database using backup controlfile......or until cancel;然后
     
     resetlogs打开,再不行就是使用隐含参数打开!


    5.alter database open resetlogs

     open resetlogs应该是将日志重新归位,使数据库的scn,检查点等保持一致;相当于把所有的联机日志重新“格式化”。这是会丢失数据的。

     resetlog 选项在不完全恢复时用,归档日志序号重新开始排序
     
     noresetlog 在完全恢复的时候用


    6.基于时间点的恢复

      SQL>set time on;

      主要是需要恢复的时间点的选取;

      启动至mount状态

      RMAN->run{
     
        SET UNTIL TIME "to_date('2014-01-17 09:54:33','yyyy-mm-dd hh24:mi:ss')";

        RESTORE DATABASE;

        RECOVER DATABASE;

      }

  • 相关阅读:
    201621123058《java程序设计》第八周学习总结
    201621123058《java程序设计》第七周学习总结
    201621123058《java程序设计》第六周学习总结
    201621123058《java程序设计》第五周学习总结
    关于HTK工具下载安装的问题
    load 和 loads的区别
    flask 数据库操作
    flask 计数器
    flask form表单
    flask 宏,继承和包含
  • 原文地址:https://www.cnblogs.com/neusc/p/oracle.html
Copyright © 2011-2022 走看看