• RMAN 完全恢复


    OS:
    ORACLE-LINUX 5.7

    DB:
    11.2.0.3.0


    完全恢复


    查看现有的数据文件
    SQL> select name from v$datafile;

    NAME
    --------------------------------------------------------------------------------
    +DATA/yoon/datafile/system.256.823151193
    +DATA/yoon/datafile/sysaux.257.823151193
    +DATA/yoon/datafile/undotbs1.258.823151193
    +DATA/yoon/datafile/users.259.823151193
    +DATA/yoon/datafile/undotbs2.264.823151401


    做一个完全备份
    RMAN> CONFIGURE CONTROLFILE AUTOBACKUP on;

    new RMAN configuration parameters:
    CONFIGURE CONTROLFILE AUTOBACKUP ON;
    new RMAN configuration parameters are successfully stored


    RMAN> backup as copy database ;

    Starting backup at 2013:12:16 15:29:30
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=34 instance=yoon1 device type=DISK
    channel ORA_DISK_1: starting datafile copy
    input datafile file number=00001 name=+DATA/yoon/datafile/system.256.823151193
    output file name=+FLUSH/yoon/datafile/system.261.834334171 tag=TAG20131216T152930 RECID=1 STAMP=834334197
    channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:35
    channel ORA_DISK_1: starting datafile copy
    input datafile file number=00002 name=+DATA/yoon/datafile/sysaux.257.823151193
    output file name=+FLUSH/yoon/datafile/sysaux.262.834334207 tag=TAG20131216T152930 RECID=2 STAMP=834334226
    channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:25
    channel ORA_DISK_1: starting datafile copy
    input datafile file number=00003 name=+DATA/yoon/datafile/undotbs1.258.823151193
    output file name=+FLUSH/yoon/datafile/undotbs1.263.834334231 tag=TAG20131216T152930 RECID=3 STAMP=834334234
    channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:03
    channel ORA_DISK_1: starting datafile copy
    input datafile file number=00005 name=+DATA/yoon/datafile/undotbs2.264.823151401
    output file name=+FLUSH/yoon/datafile/undotbs2.264.834334235 tag=TAG20131216T152930 RECID=4 STAMP=834334235
    channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:03
    channel ORA_DISK_1: starting datafile copy
    input datafile file number=00004 name=+DATA/yoon/datafile/users.259.823151193
    output file name=+FLUSH/yoon/datafile/users.265.834334237 tag=TAG20131216T152930 RECID=5 STAMP=834334237
    channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
    Finished backup at 2013:12:16 15:30:38

    Starting Control File and SPFILE Autobackup at 2013:12:16 15:30:38
    piece handle=+FLUSH/yoon/autobackup/2013_12_16/s_834334238.266.834334241 comment=NONE
    Finished Control File and SPFILE Autobackup at 2013:12:16 15:30:41


    创建一个表空间
    SQL> create tablespace yoon datafile size 5m;

    Tablespace created.

    SQL> select name from v$datafile;

    NAME
    --------------------------------------------------------------------------------
    +DATA/yoon/datafile/system.256.823151193
    +DATA/yoon/datafile/sysaux.257.823151193
    +DATA/yoon/datafile/undotbs1.258.823151193
    +DATA/yoon/datafile/users.259.823151193
    +DATA/yoon/datafile/undotbs2.264.823151401
    +DATA/yoon/datafile/yoon.268.834334445


    创建表
    SQL> create table yoon as select * from user_tables;

    Table created.

    SQL> select count(*) from yoon;

      COUNT(*)
    ----------
           971
           
    关闭数据库删除文件,模拟灾难场景
    SQL> !
    [oracle@rac1 ~]$ srvctl stop database -d yoon

    ASMCMD> rm -rf YOON.268.834334445


    启动数据库
    [oracle@rac1 ~]$ srvctl start database -d yoon  
    PRCR-1079 : Failed to start resource ora.yoon.db
    CRS-5017: The resource action "ora.yoon.db start" encountered the following error: 
    ORA-01157: cannot identify/lock data file 6 - see DBWR trace file
    ORA-01110: data file 6: '+DATA/yoon/datafile/yoon.268.834334445'
    . For details refer to "(:CLSN00107:)" in "/u01/app/grid/11.2.0/log/rac1/agent/crsd/oraagent_oracle/oraagent_oracle.log".

    CRS-2674: Start of 'ora.yoon.db' on 'rac1' failed
    CRS-2632: There are no more servers to try to place resource 'ora.yoon.db' on that would satisfy its placement policy
    CRS-5017: The resource action "ora.yoon.db start" encountered the following error: 
    ORA-01157: cannot identify/lock data file 6 - see DBWR trace file
    ORA-01110: data file 6: '+DATA/yoon/datafile/yoon.268.834334445'
    . For details refer to "(:CLSN00107:)" in "/u01/app/grid/11.2.0/log/rac2/agent/crsd/oraagent_oracle/oraagent_oracle.log".


    SQL> startup
    ORA-03135: connection lost contact
    SQL> conn / as sysdba
    Connected to an idle instance.
    SQL> startup
    ORACLE instance started.

    Total System Global Area 1653518336 bytes
    Fixed Size                  2228904 bytes
    Variable Size            1023413592 bytes
    Database Buffers          620756992 bytes
    Redo Buffers                7118848 bytes
    Database mounted.
    ORA-01157: cannot identify/lock data file 6 - see DBWR trace file
    ORA-01110: data file 6: '+DATA/yoon/datafile/yoon.268.834334445'

    不能用recover database; 因为这个数据文件根本没有备份


    需要用alter database create datafile命令重建文件
    SQL> alter database create datafile '+DATA/yoon/datafile/yoon.268.834334445';

    Database altered.


    alter database create datafile 6;


    SQL> recover datafile 6;
    ORA-00283: recovery session canceled due to errors
    ORA-01110: data file 6: '+DATA/yoon/datafile/yoon.268.834334445'
    ORA-01157: cannot identify/lock data file 6 - see DBWR trace file
    ORA-01110: data file 6: '+DATA/yoon/datafile/yoon.268.834334445'


    ASMCMD> ls
    SYSAUX.257.823151193
    SYSTEM.256.823151193
    UNDOTBS1.258.823151193
    UNDOTBS2.264.823151401
    USERS.259.823151193
    YOON.268.834334961


    发现源文件和新建的文件不同之处,因此:
    SQL> alter database rename file '+DATA/yoon/datafile/yoon.268.834334445' to '+DATA/yoon/datafile/YOON.268.834334961';

    Database altered.


    SQL> recover datafile 6;
    Media recovery complete.


    SQL> alter database open;

    Database altered.


    SQL> select name from v$datafile;

    NAME
    --------------------------------------------------------------------------------
    +DATA/yoon/datafile/system.256.823151193
    +DATA/yoon/datafile/sysaux.257.823151193
    +DATA/yoon/datafile/undotbs1.258.823151193
    +DATA/yoon/datafile/users.259.823151193
    +DATA/yoon/datafile/undotbs2.264.823151401
    +DATA/yoon/datafile/yoon.268.834334961

    6 rows selected.

    SQL> select count(*) from yoon;

      COUNT(*)
    ----------
           971

  • 相关阅读:
    jQuery的Autocomplete插件的远程url取json数据的问题
    DataTable 转换成 Json的3种方法
    IFRAME练习 各种调用
    <%: Html.DisplayNameFor与 <%: Html.DisplayFor的区别
    MVC中@Html.DisPlayFor(model=>model.newsName)和 @Model.newsName的区别
    编程思想:如何设计一个好的通信网络协议
    编程思想:巧用位运算重构代码
    编程思想:小谈网关项目中的设计模式
    Unity应用架构设计(13)——日志组件的实施
    Unity应用架构设计(12)——AOP思想的实践
  • 原文地址:https://www.cnblogs.com/hankyoon/p/5174559.html
Copyright © 2020-2023  润新知