zoukankan      html  css  js  c++  java
  • Oracle RMAN 备份及不完全恢复(删除archievelog)

    RMAN备份命令

    backup Database format='/home/oracle/backup/bak_full_%U_%T' tag='bak_full'; 
    sql 'alter system archive log current'; 
    backup archivelog all tag='arc_bak' format='/home/oracle/backup/arch_%U_%T' delete input; 
    backup current controlfile tag='bak_ctlfile' format='/home/oracle/backup/bak_ctl_%U_%T'; 
    backup spfile tag='spfile' format='/home/oracle/backup/bak_spfile_%U_%T';

    备份完后插入测试数据

    insert into zz values(2); commit;

    insert into qq values(2); commit;

    然后通过alter system switch logfile多切几次归档,切出多个归档文件

    o1_mf_1_12_cpb2xhg8_.arc o1_mf_1_14_cpb36dbo_.arc
    o1_mf_1_13_cpb35zgs_.arc o1_mf_1_15_cpb37ff2_.arc

    删除12和14文件

    [oracle@ocp 2016_06_18]$ rm o1_mf_1_12_cpb2xhg8_.arc
    [oracle@ocp 2016_06_18]$ rm o1_mf_1_14_cpb36dbo_.arc

    通过在RMAN中运行处理使得报错

    run {

    sql'alter database datafile 6 offline';

    restore datafile 6;

    recover datafile 6;

    sql'alter database datafile 6 online';

    }

    错误为

    RMAN> recover datafile 6;

    Starting recover at 18-JUN-16
    using channel ORA_DISK_1

    starting media recovery

    archived log for thread 1 with sequence 13 is already on disk as file /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_13_cpb35zgs_.arc
    archived log for thread 1 with sequence 15 is already on disk as file /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_15_cpb37ff2_.arc
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of recover command at 06/18/2016 16:59:59
    RMAN-06053: unable to perform media recovery because of missing log
    RMAN-06025: no backup of archived log for thread 1 with sequence 14 and starting SCN of 1105737 found to restore
    RMAN-06025: no backup of archived log for thread 1 with sequence 12 and starting SCN of 1080714 found to restore

    查看archieve目录,发现确实只有

    o1_mf_1_13_cpb35zgs_.arc  o1_mf_1_15_cpb37ff2_.arc

    查看v$log,得到最后需要应用的日志文件应该是16

    SQL> select group#,sequence#,status from v$log;

    GROUP# SEQUENCE# STATUS
    ---------- ---------- ----------------
    1 16 CURRENT
    2 14 INACTIVE
    3 15 INACTIVE

    被还原的6号文件的scn为

    SQL> select file#,change# from v$recover_file;

    FILE# CHANGE#
    ---------- ----------
    6 1080514

    查看v$log_history得知需要从10号文件开始恢复

    SQL> select sequence# from v$log_history where 1080514 between first_change# and next_change#-1;

    SEQUENCE#
    ----------
    10

    RMAN> list backup of archivelog all;


    List of Backup Sets
    ===================


    BS Key Size Device Type Elapsed Time Completion Time
    ------- ---------- ----------- ------------ ---------------
    3 61.04M DISK 00:00:03 16-JUN-16
    BP Key: 3 Status: AVAILABLE Compressed: NO Tag: TAG20160616T165323
    Piece Name: /u01/app/oracle/flash_recovery_area/ORCL/backupset/2016_06_16/o1_mf_annnn_TAG20160616T165323_cp4t83nk_.bkp

    List of Archived Logs in backup set 3
    Thrd Seq Low SCN Low Time Next SCN Next Time
    ---- ------- ---------- --------- ---------- ---------
    1 6 1022418 08-JUN-16 1033516 16-JUN-16
    1 7 1033516 16-JUN-16 1047305 16-JUN-16

    BS Key Size Device Type Elapsed Time Completion Time
    ------- ---------- ----------- ------------ ---------------
    4 61.05M DISK 00:00:02 16-JUN-16
    BP Key: 4 Status: AVAILABLE Compressed: NO Tag: TAG20160616T165445
    Piece Name: /u01/app/oracle/flash_recovery_area/ORCL/backupset/2016_06_16/o1_mf_annnn_TAG20160616T165445_cp4tbogp_.bkp

    List of Archived Logs in backup set 4
    Thrd Seq Low SCN Low Time Next SCN Next Time
    ---- ------- ---------- --------- ---------- ---------
    1 6 1022418 08-JUN-16 1033516 16-JUN-16
    1 7 1033516 16-JUN-16 1047305 16-JUN-16
    1 8 1047305 16-JUN-16 1047358 16-JUN-16

    BS Key Size Device Type Elapsed Time Completion Time
    ------- ---------- ----------- ------------ ---------------
    7 61.02M DISK 00:00:03 18-JUN-16
    BP Key: 7 Status: AVAILABLE Compressed: NO Tag: ARC_BACK
    Piece Name: /home/oracle/backup/arch_07r8fcti_1_1_20160618

    List of Archived Logs in backup set 7
    Thrd Seq Low SCN Low Time Next SCN Next Time
    ---- ------- ---------- --------- ---------- ---------
    1 9 1047358 16-JUN-16 1071119 16-JUN-16
    1 10 1071119 16-JUN-16 1080684 18-JUN-16
    1 11 1080684 18-JUN-16 1080714 18-JUN-16

    备份级里面有6,7,8,9,10,11,6号文件test01.dbf需要的是从10号archivelog开始,但需要恢复到16号文件,目前缺少12,14文件.

    查找一下12-14文件的位置,进行确认.

    RMAN> list archivelog low sequence 12 high sequence 14

    2> ;

    List of Archived Log Copies for database with db_unique_name ORCL
    =====================================================================

    Key Thrd Seq S Low Time
    ------- ---- ------- - ---------
    7 1 12 A 18-JUN-16
    Name: /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_12_cpb2xhg8_.arc

    8 1 13 A 18-JUN-16
    Name: /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_13_cpb35zgs_.arc

    9 1 14 A 18-JUN-16
    Name: /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_14_cpb36dbo_.arc

    只能不完全恢复到12

    shutdown abort;

    starup force mount;

    RMAN> run {
    2> set until sequence 12;
    3> restore database;
    4> }

    executing command: SET until clause

    Starting restore at 18-JUN-16
    using channel ORA_DISK_1
    flashing back control file to SCN 1080714

    channel ORA_DISK_1: starting datafile backup set restore
    channel ORA_DISK_1: specifying datafile(s) to restore from backup set
    channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/orcl/system01.dbf
    channel ORA_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/orcl/sysaux01.dbf
    channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/orcl/undotbs01.dbf
    channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/orcl/users01.dbf
    channel ORA_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/orcl/example01.dbf
    channel ORA_DISK_1: restoring datafile 00006 to /u01/app/oracle/oradata/orcl/test01.dbf
    channel ORA_DISK_1: reading from backup piece /home/oracle/backup/back_full_05r8fcon_1_1_20160618
    channel ORA_DISK_1: piece handle=/home/oracle/backup/back_full_05r8fcon_1_1_20160618 tag=BACK_FULL
    channel ORA_DISK_1: restored backup piece 1
    channel ORA_DISK_1: restore complete, elapsed time: 00:00:35
    Finished restore at 18-JUN-16

    RMAN> run {
    2> set until sequence 12;
    3> recover database;
    4> }

    executing command: SET until clause

    Starting recover at 18-JUN-16
    using channel ORA_DISK_1

    starting media recovery

    channel ORA_DISK_1: starting archived log restore to default destination
    channel ORA_DISK_1: restoring archived log
    archived log thread=1 sequence=10
    channel ORA_DISK_1: restoring archived log
    archived log thread=1 sequence=11
    channel ORA_DISK_1: reading from backup piece /home/oracle/backup/arch_07r8fcti_1_1_20160618
    channel ORA_DISK_1: piece handle=/home/oracle/backup/arch_07r8fcti_1_1_20160618 tag=ARC_BACK
    channel ORA_DISK_1: restored backup piece 1
    channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
    archived log file name=/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_10_cpb4clcf_.arc thread=1 sequence=10
    channel default: deleting archived log(s)
    archived log file name=/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_10_cpb4clcf_.arc RECID=20 STAMP=914865395
    archived log file name=/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_11_cpb4clcl_.arc thread=1 sequence=11
    channel default: deleting archived log(s)
    archived log file name=/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_11_cpb4clcl_.arc RECID=19 STAMP=914865394
    media recovery complete, elapsed time: 00:00:00
    Finished recover at 18-JUN-16

    RMAN> alter database open resetlogs;

    database opened

    用scott/tiger登录后查看,发现插入的数据不在了.

    打开后,需要重新备份数据库,备份前需要删除原有多余的backup set及archivelog

    RMAN> configure retention policy to redundancy 1;

    new RMAN configuration parameters:
    CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
    new RMAN configuration parameters are successfully stored

    RMAN> crosscheck backup;

    using channel ORA_DISK_1
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2016_06_16/o1_mf_nnndf_TAG20160616T164736_cp4sx8fp_.bkp RECID=1 STAMP=914690856
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2016_06_16/o1_mf_ncsnf_TAG20160616T164736_cp4sznlh_.bkp RECID=2 STAMP=914690932
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2016_06_16/o1_mf_annnn_TAG20160616T165323_cp4t83nk_.bkp RECID=3 STAMP=914691203
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2016_06_16/o1_mf_annnn_TAG20160616T165445_cp4tbogp_.bkp RECID=4 STAMP=914691285
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/home/oracle/backup/back_full_05r8fcon_1_1_20160618 RECID=5 STAMP=914862871
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/home/oracle/backup/back_full_06r8fcr2_1_1_20160618 RECID=6 STAMP=914862947
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/home/oracle/backup/arch_07r8fcti_1_1_20160618 RECID=7 STAMP=914863026
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/home/oracle/backup/back_ctl_08r8fd2c_1_1_20160618 RECID=8 STAMP=914863181
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/home/oracle/backup/back_spfile_09r8fd3n_1_1_20160618 RECID=9 STAMP=914863223
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/home/oracle/backup/bak_ctl_0ar8i7jh_1_1_20160619 RECID=10 STAMP=914955890
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/home/oracle/backup/bak_full_0br8i7kj_1_1_20160619 RECID=11 STAMP=914955923
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/home/oracle/backup/bak_full_0cr8i7mk_1_1_20160619 RECID=12 STAMP=914955989
    Crosschecked 12 objects


    RMAN> report obsolete;

    RMAN retention policy will be applied to the command
    RMAN retention policy is set to redundancy 1
    Report of obsolete backups and copies
    Type Key Completion Time Filename/Handle
    -------------------- ------ ------------------ --------------------
    Backup Set 1 16-JUN-16
    Backup Piece 1 16-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2016_06_16/o1_mf_nnndf_TAG20160616T164736_cp4sx8fp_.bkp
    Backup Set 2 16-JUN-16
    Backup Piece 2 16-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2016_06_16/o1_mf_ncsnf_TAG20160616T164736_cp4sznlh_.bkp
    Backup Set 3 16-JUN-16
    Backup Piece 3 16-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2016_06_16/o1_mf_annnn_TAG20160616T165323_cp4t83nk_.bkp
    Backup Set 4 16-JUN-16
    Backup Piece 4 16-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2016_06_16/o1_mf_annnn_TAG20160616T165445_cp4tbogp_.bkp
    Backup Set 5 18-JUN-16
    Backup Piece 5 18-JUN-16 /home/oracle/backup/back_full_05r8fcon_1_1_20160618
    Backup Set 6 18-JUN-16
    Backup Piece 6 18-JUN-16 /home/oracle/backup/back_full_06r8fcr2_1_1_20160618
    Backup Set 7 18-JUN-16
    Backup Piece 7 18-JUN-16 /home/oracle/backup/arch_07r8fcti_1_1_20160618
    Backup Set 8 18-JUN-16
    Backup Piece 8 18-JUN-16 /home/oracle/backup/back_ctl_08r8fd2c_1_1_20160618
    Archive Log 7 18-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_12_cpb2xhg8_.arc
    Backup Set 9 18-JUN-16
    Backup Piece 9 18-JUN-16 /home/oracle/backup/back_spfile_09r8fd3n_1_1_20160618
    Archive Log 8 18-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_13_cpb35zgs_.arc
    Archive Log 9 18-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_14_cpb36dbo_.arc
    Archive Log 10 18-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_15_cpb37ff2_.arc
    Archive Log 21 18-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_16_cpb4d2gl_.arc
    Archive Log 23 18-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_15_cpb4d2jt_.arc
    Archive Log 22 18-JUN-16 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2016_06_18/o1_mf_1_14_cpb4d2jn_.arc
    Backup Set 10 19-JUN-16
    Backup Piece 10 19-JUN-16 /home/oracle/backup/bak_ctl_0ar8i7jh_1_1_20160619

    RMAN> delete obsolete

    crosscheck archivelog all;

    delete noprompt expired archivelog all;

  • 相关阅读:
    React生命周期, 兄弟组件之间通信
    React组件式编程Demo-用户的增删改查
    React之this.refs, 实现数据双向绑定
    CCF CSP 201812-4 数据中心
    CCF CSP 201812-4 数据中心
    PAT 顶级 1020 Delete At Most Two Characters (35 分)
    PAT 顶级 1020 Delete At Most Two Characters (35 分)
    Codeforces 1245C Constanze's Machine
    Codeforces 1245C Constanze's Machine
    CCF CSP 201712-4 行车路线
  • 原文地址:https://www.cnblogs.com/ericnie/p/5596587.html
Copyright © 2011-2022 走看看