恢复前提有数据备份

以 alter database open resetlogs 开机以后多要做一次全备(以前的备份失效了)

恢复参数文件:
  restore spfile from '/home/oracle/bak/PROD4_25s8i1dp_1_1.spfile';

恢复控制文件:
  rman>restore controlfile from '/home/oracle/bak/ctl_PROD4_20170705_68_1';

  rman>alter database mount;

恢复数据文件:

  rman> alter database open;   #报错
  rman>list failure; #查看错误
  rman>advise failure; #恢复建议
  rman>repair failure; #恢复-- yes

恢复一个普通表空间:

  SQL> alter tablespace users offline;
  RMAN> restore tablespace users; #如果不行,关机 然后开启到mount状态
  SQL>shutdown abort mount;
  RMAN> restore tablespace users;
  RMAN> recover database;
  SQL> alter database open;

  SQL> alter tablespace users online;

恢复所有.dbf 数据文件:

  SQL>shutdown abort
  RMAN> startup
  RMAN> restore database;
  RMAN> recover dastabase;
  alter database open;

恢复控制文件:

  shutdown abort

  RMAN>startup #nomount
  恢复控制文件:
    RMAN>restore controfile from '/home/oracle/bak/ctlxxx';
    alter database mount;
    RMAN>recover database
    alter database open resetlog;

当前redo文件损坏

恢复:

  shutdown abort

  rman>startup #

  删除 控制文件,恢复:
    rm *.ctl
    SQL>shutdown abort
    rman> startup
    rman>restore controlfile from '/xxx/xx';
    alter database mount;

    recover database; #xxxx
    recover database until scn xxxx;
      #alter database recover if needed start until change xxx using backup controlfile;

#这些步骤多是垂死挣扎了,多没有用(直接删除控制文件,删除数据文件,然后全库恢复)

  删除 数据文件,恢复:

    rm -rf *.dbf

    RMAN> restore database;
    RMAN> recover database; #报错 (但是数据文件,控制文件是一致)
    rman>recover database until scn xxx;
    alter database open resetlog;

  #当前redo 损坏 ,必然丢数据的。

 

  

使用rman恢复数据小结的更多相关文章

  1. 【Oracle】非RMAN恢复数据文件、控制文件

    实验环境:OEL 5.6 oracle 11g(11.2.0.4.0) 注意: system表空间数据文件不能在线recover,需要启动到mount状态再recover: undo表空间数据文件可以 ...

  2. RMAN恢复数据文件

    实验之前先备份数据库 RMAN>backup database; 在操作系统中删除数据文件 5 SQL> startup ORACLE 例程已经启动. Total System Globa ...

  3. ORACLE11g 没有控制文件如何通过rman备份恢复数据的详细实战过程

    1.副总裁需要裸恢复的严峻现实 集团总部的信息部负责人给我打电话说为了找一年前的记录,所以需要对一年前2015年5月1日的数据进行恢复.而2016年初因为进行迁移,所以有些文件可能丢失,手上只有rma ...

  4. 使用RMAN对数据文件进行恢复

    (1)备份数据库 在使用RMAN进行数据库恢复之前,先用RMAN进行全库备份 [oracle@redhat6 ~]$ rman target / Recovery Manager: Release : ...

  5. RAC 之 RMAN 恢复

    RAC 下的RMAN 讲究的是备份和还原的策略要一致.备份策略的不同,会导致备份结果的分步不同,进而影响恢复的策略和步骤.一般情况下,恢复策略和备份策略必须是对应的.如果备份策略进行了修改,那么恢复也 ...

  6. RAC之RMAN恢复

    之前整理的RMAN 有关还原的文章: RMAN 系列(五) ---- RMAN 还原 与 恢复 http://blog.csdn.net/tianlesoftware/archive/2010/07/ ...

  7. RAC+asm通过rman恢复到单实例+asm

    1.恢复参数文件,并修改参数文件 参数文件指名几个最简单的就行,我的参数文件如下: 2.恢复控制文件,并启动数据库到mount 如果是把备份集从别的服务器拷贝到本地恢复的服务器的目录,使用下面的语句指 ...

  8. RMAN恢复目录

    是否使用RMAN恢复目录(Recovery Catalog 你可能从其他人或书上听过RMAN恢复目录(也有可能是其他名字,RMAN Recovery Catalog的翻译较多较杂,以下简称恢复目录), ...

  9. ORACLE恢复数据

    ORACLE恢复删除表或表记录 一:表的恢复      对误删的表,只要没有使用PURGE永久删除选项,那么从flash back区恢复回来希望是挺大的.一般步骤有: 1.从flash back里查询 ...

随机推荐

  1. java中不同类如何相互访问变量值(新手见解,可能很low)

    最近在学基础java知识,这个是很常见的问题之一了,下面我要列出三种异类取值方法,当然不止这些,我选择了最简单的三种: 1.可以使用static静态变量,直接调用要访问类的属性和方法.因为 Java ...

  2. C# Distanct List集合

    简单一维集合的使用 List<int> ages = new List<int> { 21, 46, 46, 55, 17, 21, 55, 55 }; List<str ...

  3. svn中有的代码被标注黄色,绿色和红色,分别表示什么意思呢?

    1.红色感叹号表示这个文件从服务器上下载下来以后,在本地被修改过.这时执行提交操作就可以了.2.黄色感叹号表示这个文件在提交的时候发现存在冲突,也就是说有别人在你提交之前对这个文件的同一个版本进行了修 ...

  4. idea报错:Please, configure Web Facet first!

    https://blog.csdn.net/handsomepig123_/article/details/87257689  转载

  5. Day 04 [与用户交互,格式化输出,基本运算符]

    Python 的与用户交互 name=input("请输入姓名:") height=input('请输入身高:') weight=input('请输入体重:') 在python3中 ...

  6. Django路由URL

    URL配置(URLconf)就像Django所支撑网站的目录.URL与要为该URL调用的视图函数之间的映射表. URLconf配置 样式: from django.conf.urls import u ...

  7. 汇编(assembling)简介(源:阮一峰)

    简介 计算机真正能够理解的是低级语言,它专门用来控制硬件.汇编语言就是低级语言,直接描述/控制 CPU 的运行.如果你想了解 CPU 到底干了些什么,以及代码的运行步骤,就一定要学习汇编语言. 我们知 ...

  8. Java web课程学习之JSP

    JSP     jsp隐式对象:JSP隐式对象是JSP容器为每个页面提供的Java对象,开发者可以直接使用它们而不用显式声明.JSP隐式对象也被称为预定义变量. jsp脚本片段 l jsp脚本片段是指 ...

  9. Codeforces 679A Bear and Prime 100

    链接:传送门 题意:给你一个隐藏数,这个隐藏数在[2,100]之间,现在最多可以询问20次,每次询问的是这个数是不是隐藏数的底数,是为yes,不是为no,每次询问后都需要flush一下输出缓冲区,最后 ...

  10. snprintf

    snprintf(),函数原型为int snprintf(char *str, size_t size, const char *format, ...).   将可变参数 “…” 按照format的 ...