ORACLE_OCP之非归档模式下使用RMAN进行全库备份

ORACLE_OCP之非归档模式下使用RMAN进行全库备份

  • 写在前:所有情况以你遇到的为主,该文档只是起到了命令辅助记忆的功能,如果遇到了与该文档状况不一致的情况,请以你遇到的当前状况为准。

一、前提:在SQLPLUS下使用该命令查看当前数据库的归档状态

SQL> archive log list;
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination ?#/dbs/arch
Oldest online log sequence 4
Current log sequence 6

  1. 切换到root用户在“/”根目录下建立full目录。

    mkdir /full

  2. 把/full目录所属权赋予给oracle用户和oinstall组

    chown -R oracle:oinstall /full

  3. 切换回oracle用户 并在/full目录下建立arch目录(注 arch目录留着备用)

    su - oracle
    mkdir -p /full/arch

二、RMAN备份正式开始!

  • 使用rman target / 进入到rman中
  1. 查看当前数据库状态

    RMAN> select status from v$instance;
    using target database control file instead of recovery catalog(这句话不用管他下次再执行一次查询就不出了)
    STATUS
    -----------
    OPEN

    我们再执行一次这个查询
    RMAN> select status from v$instance;
    STATUS
    ------------
    OPEN
    看到了吧!那句话不出了吧!!!

    根据查询我们可以看到我们的数据库现在是OPEN状态。OPEN状态是数据库正常的打开状态,就是STARTUP或ALTER DATABASE OPEN;后可供我们正常使用的数据库。

  2. 执行backup database;

    RMAN> backup database;
    /
    Starting backup at 2021-01-01 15:20:15
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=52 device type=DISK
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of backup command at 01/01/2021 15:20:15
    RMAN-06149: cannot BACKUP DATABASE in NOARCHIVELOG mode
    /
    //这里报错,我们从最后一个报错信息可以看到(RMAN-06149: cannot BACKUP DATABASE in NOARCHIVELOG mode),我们不能在非归档模式下的OPEN状态的数据库进行全库备份。

  3. 关闭数据库

    RMAN> shutdown immediate
    database closed
    database dismounted
    Oracle instance shut down

  4. 将数据库启动到mount状态

    RMAN> startup mount
    connected to target database (not started)
    Oracle instance started
    database mounted
    Total System Global Area 838860800 bytes
    Fixed Size 8626240 bytes
    Variable Size 322965440 bytes
    Database Buffers 503316480 bytes
    Redo Buffers 3952640 bytes

  5. 检查数据库现在的状态

    RMAN> SELECT STATUS FROM V$INSTANCE;
    STATUS
    ------------
    MOUNTED
    //可以看到是MOUNT状态的。

  6. 执行backup database; 全库备份

    
    RMAN> backup database;
    
    Starting backup at 2021-01-01 17:18:52
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=133 device type=DISK
    channel ORA_DISK_1: starting full datafile backup set
    channel ORA_DISK_1: specifying datafile(s) in backup set
    input datafile file number=00001 name=/u01/app/oracle/oradata/orcl/system01.dbf
    input datafile file number=00003 name=/u01/app/oracle/oradata/orcl/sysaux01.dbf
    input datafile file number=00002 name=/u01/app/oracle/oradata/orcl/undotbs2_01.dbf
    input datafile file number=00005 name=/u01/app/oracle/oradata/orcl/undo02.dbf
    input datafile file number=00004 name=/u01/app/oracle/oradata/orcl/undotbs01.dbf
    input datafile file number=00007 name=/u01/app/oracle/oradata/orcl/users01.dbf
    channel ORA_DISK_1: starting piece 1 at 2021-01-01 17:18:53
    channel ORA_DISK_1: finished piece 1 at 2021-01-01 17:19:08
    piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1 tag=TAG20210101T171853 comment=NONE
    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:15
    Finished backup at 2021-01-01 17:19:08
    
    Starting Control File and SPFILE Autobackup at 2021-01-01 17:19:08
    piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-01 comment=NONE
    Finished Control File and SPFILE Autobackup at 2021-01-01 17:19:09
    
  • 全库备份完成,而且我们能从最后一段提示可以看出控制文件与SPFILE文件(Starting Control File and SPFILE Autobackup at)也进行了自动备份,并成功完成了这两个文件的备份。存储到了“/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-01”这个文件中。

  • 我们也可以将RMAN备份备份到指定位置!这个会在后面讲!

  • 例:

    backup format '/full/full_%d_%s_%T_%p.bak database;

  1. 使用list backup;命令查看一下该备份结果
    
    RMAN> list backup;
    
    
    List of Backup Sets
    ===================
    
    
    BS Key  Type LV Size       Device Type Elapsed Time Completion Time
    ------- ---- -- ---------- ----------- ------------ -------------------
    1       Full    1.23G      DISK        00:00:20     2021-01-01 15:20:36
            BP Key: 1   Status: AVAILABLE  Compressed: NO  Tag: TAG20210101T152016
            Piece Name: /u01/app/oracle/product/12.2.0/db_1/dbs/01vji1dg_1_1
      List of Datafiles in backup set 1
      File LV Type Ckp SCN    Ckp Time            Abs Fuz SCN Sparse Name
      ---- -- ---- ---------- ------------------- ----------- ------ ----
      1       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/system01.dbf
      2       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/undotbs2_01.dbf
      3       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/sysaux01.dbf
      4       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/undotbs01.dbf
      5       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/undo02.dbf
      7       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/users01.dbf
    
    BS Key  Type LV Size       Device Type Elapsed Time Completion Time
    ------- ---- -- ---------- ----------- ------------ -------------------
    2       Full    10.19M     DISK        00:00:01     2021-01-01 15:20:42
            BP Key: 2   Status: AVAILABLE  Compressed: NO  Tag: TAG20210101T152041
            Piece Name: /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-00
      SPFILE Included: Modification time: 2021-01-01 05:22:42
      SPFILE db_unique_name: ORCL
      Control File Included: Ckp SCN: 3097913      Ckp time: 2021-01-01 15:20:41
    
    BS Key  Type LV Size       Device Type Elapsed Time Completion Time
    ------- ---- -- ---------- ----------- ------------ -------------------
    3       Full    1.23G      DISK        00:00:10     2021-01-01 17:19:03
            BP Key: 3   Status: AVAILABLE  Compressed: NO  Tag: TAG20210101T171853
            Piece Name: /u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1
      List of Datafiles in backup set 3
      File LV Type Ckp SCN    Ckp Time            Abs Fuz SCN Sparse Name
      ---- -- ---- ---------- ------------------- ----------- ------ ----
      1       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/system01.dbf
      2       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/undotbs2_01.dbf
      3       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/sysaux01.dbf
      4       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/undotbs01.dbf
      5       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/undo02.dbf
      7       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/users01.dbf
    
    BS Key  Type LV Size       Device Type Elapsed Time Completion Time
    ------- ---- -- ---------- ----------- ------------ -------------------
    4       Full    10.19M     DISK        00:00:00     2021-01-01 17:19:08
            BP Key: 4   Status: AVAILABLE  Compressed: NO  Tag: TAG20210101T171908
            Piece Name: /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-01
      SPFILE Included: Modification time: 2021-01-01 17:18:56
      SPFILE db_unique_name: ORCL
      Control File Included: Ckp SCN: 3103443      Ckp time: 2021-01-01 17:19:08
    
  • 备份成功!
  1. 使用alter database open;打开数据库

    RMAN> alter database open;
    Statement processed
    RMAN> SELECT STATUS FROM V$INSTANCE;
    STATUS
    ------------
    OPEN

  • 打开数据库成功!备份完成。

三 使用备份恢复数据库!

  1. 找到数据文件的位置!

    RMAN> SELECT NAME FROM V$DATAFILE;
    using target database control file instead of recovery catalog
    NAME
    --------------------------------------------------------------------------------
    /u01/app/oracle/oradata/orcl/system01.dbf
    /u01/app/oracle/oradata/orcl/undotbs2_01.dbf
    /u01/app/oracle/oradata/orcl/sysaux01.dbf
    /u01/app/oracle/oradata/orcl/undotbs01.dbf
    /u01/app/oracle/oradata/orcl/undo02.dbf
    /u01/app/oracle/oradata/orcl/users01.dbf

  • 我们可以看到所有的数据文件都在 “/u01/app/oracle/oradata/orcl/”目录中。
  1. 关闭数据库并删除所有的数据文件

    RMAN> shutdown immediate
    database closed
    database dismounted
    Oracle instance shut down
    RMAN> exit
    Recovery Manager complete.

  • 在linux命令行下删除下面的数据文件。(此处以我的操作系统目录为主。大家请按自己的自身真实目录情况删除对应的文件)

    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/oradata/orcl/system01.dbf
    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/oradata/orcl/undotbs2_01.dbf
    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/oradata/orcl/sysaux01.dbf
    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/oradata/orcl/undotbs01.dbf
    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/oradata/orcl/undo02.dbf
    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/oradata/orcl/users01.dbf

  1. 使用RMAN启动数据库,这里也可以使用sqlplus / as sysdba启动数据库,我主要是为了方便所以用了RMAN.
    
    [oracle@oracle12 ~]$ rman target /
    
    Recovery Manager: Release 12.2.0.1.0 - Production on Fri Jan 1 17:56:41 2021
    
    Copyright (c) 1982, 2017, Oracle and/or its affiliates.  All rights reserved.
    
    connected to target database (not started)
    
    RMAN> startup
    
    Oracle instance started
    database mounted
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of startup command at 01/01/2021 17:56:59
    ORA-01157: cannot identify/lock data file 1 - see DBWR trace file
    ORA-01110: data file 1: '/u01/app/oracle/oradata/orcl/system01.dbf'
    
    RMAN>
    
    
  • 可以看到数据库无法启动,主要是因为我们刚才输出了所有的数据文件造成的。
  1. 使用备份恢复所有的数据文件,但是要先确定你的操作系统现在是mount状态。

    RMAN> SELECT STATUS FROM V$INSTANCE;
    using target database control file instead of recovery catalog
    STATUS
    ------------
    MOUNTED

  • 已经确定了是MOUNT状态,恢复数据库。

    //还原数据文件
    RMAN> restore database;
    
    Starting restore at 2021-01-01 17:59:17
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=390 device type=DISK
    
    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/undotbs2_01.dbf
    channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/orcl/sysaux01.dbf
    channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/orcl/undotbs01.dbf
    channel ORA_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/orcl/undo02.dbf
    channel ORA_DISK_1: restoring datafile 00007 to /u01/app/oracle/oradata/orcl/users01.dbf
    channel ORA_DISK_1: reading from backup piece /u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1
    channel ORA_DISK_1: piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1 tag=TAG20210101T171853
    channel ORA_DISK_1: restored backup piece 1
    channel ORA_DISK_1: restore complete, elapsed time: 00:00:16
    Finished restore at 2021-01-01 17:59:34
    
    
  • 数据文件恢复完成!

  1. 对数据库进行介质恢复

    RMAN> recover database;
    
    Starting recover at 2021-01-01 18:00:54
    using channel ORA_DISK_1
    
    starting media recovery
    media recovery complete, elapsed time: 00:00:00
    
    Finished recover at 2021-01-01 18:00:55
    
  2. 恢复完成以resetlogs;打开数据库

    RMAN> alter database open resetlogs;
    
    Statement processed
    
    RMAN> SELECT STATUS FROM V$INSTANCE;
    
    STATUS
    ------------
    OPEN
    
    恢复步骤完成。
    

四、使用RMAN单独恢复某一个丢失的数据文件。//此处会与视频发生情况不同,请按照真实的“advise failure”给出方案为准!!!

  1. 在数据库open状态下,我们删除user01.dbf
    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/oradata/orcl/users01.dbf
    [oracle@oracle12 ~]$ sqlplus / as sysdba
    
    SQL*Plus: Release 12.2.0.1.0 Production on Fri Jan 1 18:12:36 2021
    
    Copyright (c) 1982, 2016, Oracle.  All rights reserved.
    
    
    Connected to:
    Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
    
    SQL> shutdown immediate
    ORA-01116: error in opening database file 7
    ORA-01110: data file 7: '/u01/app/oracle/oradata/orcl/users01.dbf'
    ORA-27041: unable to open file
    Linux-x86_64 Error: 2: No such file or directory
    Additional information: 3
    SQL> shutdown abort
    ORACLE instance shut down.
    SQL>
    
    
  2. 进入到rman 启动数据库
    
    [oracle@oracle12 ~]$ rman target /
    
    Recovery Manager: Release 12.2.0.1.0 - Production on Fri Jan 1 18:14:08 2021
    
    Copyright (c) 1982, 2017, Oracle and/or its affiliates.  All rights reserved.
    
    connected to target database (not started)
    
    RMAN> startup
    
    Oracle instance started
    database mounted
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of startup command at 01/01/2021 18:14:30
    ORA-01157: cannot identify/lock data file 7 - see DBWR trace file
    ORA-01110: data file 7: '/u01/app/oracle/oradata/orcl/users01.dbf'
    
    RMAN>
    
    
  3. 发现故障,这里教大家一个小妙招,使用“list failure;”命令查看数据库当前故障
    RMAN> list failure;
    
    using target database control file instead of recovery catalog
    Database Role: PRIMARY
    
    List of Database Failures
    =========================
    
    Failure ID Priority Status    Time Detected       Summary
    ---------- -------- --------- ------------------- -------
    163        HIGH     OPEN      2021-01-01 17:59:19 One or more non-system datafiles are corrupt
    105        HIGH     OPEN      2021-01-01 17:56:59 One or more non-system datafiles are missing
    
  • 可以看到这里ORACLE已经告诉我们了,是因为一个或多个数据文件丢失,和我们刚才看到的上面的报错符合。
  1. 使用“advise failure;” 这个命令查看一下解决方案
    
    RMAN> advise failure;
    
    Database Role: PRIMARY
    
    List of Database Failures
    =========================
    
    Failure ID Priority Status    Time Detected       Summary
    ---------- -------- --------- ------------------- -------
    163        HIGH     OPEN      2021-01-01 17:59:19 One or more non-system datafiles are corrupt
    105        HIGH     OPEN      2021-01-01 17:56:59 One or more non-system datafiles are missing
    
    analyzing automatic repair options; this may take some time
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=390 device type=DISK
    analyzing automatic repair options complete
    
    Mandatory Manual Actions
    ========================
    no manual actions available
    
    Optional Manual Actions
    =======================
    1. If file /u01/app/oracle/oradata/orcl/users01.dbf was unintentionally renamed or moved, restore it
    
    Automated Repair Options
    ========================
    Option Repair Description
    ------ ------------------
    1      Restore and recover datafile 7
      Strategy: The repair includes complete media recovery with no data loss
      Repair script: /u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_3657336767.hm
    
    RMAN>
    
    
  • 这里的最后一行“Repair script: /u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_3657336767.hm” 给出了我们一个恢复方案脚本。

  • 我们查看一下这个方案

    [oracle@oracle12 ~]$ cat /u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_3657336767.hm
    # restore and recover datafile
    restore ( datafile 7 );
    recover datafile 7;
    sql ‘alter database datafile 7 online’;
    [oracle@oracle12 ~]$

  • 那么我们按照他的办法来。

    RMAN> restore ( datafile 7 );
    
    Starting restore at 2021-01-01 18:22:11
    using channel ORA_DISK_1
    
    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 00007 to /u01/app/oracle/oradata/orcl/users01.dbf
    channel ORA_DISK_1: reading from backup piece /u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1
    channel ORA_DISK_1: piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1 tag=TAG20210101T171853
    channel ORA_DISK_1: restored backup piece 1
    channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
    Finished restore at 2021-01-01 18:22:13
    
    RMAN> recover datafile 7;
    
    Starting recover at 2021-01-01 18:22:21
    using channel ORA_DISK_1
    
    starting media recovery
    media recovery complete, elapsed time: 00:00:00
    
    Finished recover at 2021-01-01 18:22:22
    
    RMAN> alter database datafile 7 online
    2> ;
    
    Statement processed
    
    RMAN>
    
    
  • 恢复成功!

五、使用crosscheck命令,对数据库进行相关的维护。

先检查备份文件状态。
```

RMAN> list backup;


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


BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
1       Full    1.23G      DISK        00:00:20     2021-01-01 15:20:36
        BP Key: 1   Status: AVAILABLE  Compressed: NO  Tag: TAG20210101T152016
        Piece Name: /u01/app/oracle/product/12.2.0/db_1/dbs/01vji1dg_1_1
  List of Datafiles in backup set 1
  File LV Type Ckp SCN    Ckp Time            Abs Fuz SCN Sparse Name
  ---- -- ---- ---------- ------------------- ----------- ------ ----
  1       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/system01.dbf
  2       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/undotbs2_01.dbf
  3       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/sysaux01.dbf
  4       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/undotbs01.dbf
  5       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/undo02.dbf
  7       Full 3097897    2021-01-01 15:20:16              NO    /u01/app/oracle/oradata/orcl/users01.dbf

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
2       Full    10.19M     DISK        00:00:01     2021-01-01 15:20:42
        BP Key: 2   Status: AVAILABLE  Compressed: NO  Tag: TAG20210101T152041
        Piece Name: /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-00
  SPFILE Included: Modification time: 2021-01-01 05:22:42
  SPFILE db_unique_name: ORCL
  Control File Included: Ckp SCN: 3097913      Ckp time: 2021-01-01 15:20:41

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
3       Full    1.23G      DISK        00:00:10     2021-01-01 17:19:03
        BP Key: 3   Status: AVAILABLE  Compressed: NO  Tag: TAG20210101T171853
        Piece Name: /u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1
  List of Datafiles in backup set 3
  File LV Type Ckp SCN    Ckp Time            Abs Fuz SCN Sparse Name
  ---- -- ---- ---------- ------------------- ----------- ------ ----
  1       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/system01.dbf
  2       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/undotbs2_01.dbf
  3       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/sysaux01.dbf
  4       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/undotbs01.dbf
  5       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/undo02.dbf
  7       Full 3103430    2021-01-01 17:18:53              NO    /u01/app/oracle/oradata/orcl/users01.dbf

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
4       Full    10.19M     DISK        00:00:00     2021-01-01 17:19:08
        BP Key: 4   Status: AVAILABLE  Compressed: NO  Tag: TAG20210101T171908
        Piece Name: /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-01
  SPFILE Included: Modification time: 2021-01-01 17:18:56
  SPFILE db_unique_name: ORCL
  Control File Included: Ckp SCN: 3103443      Ckp time: 2021-01-01 17:19:08

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
5       Full    10.19M     DISK        00:00:01     2021-01-01 18:29:27
        BP Key: 5   Status: AVAILABLE  Compressed: NO  Tag: TAG20210101T182926
        Piece Name: /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-02
  SPFILE Included: Modification time: 2021-01-01 18:14:32
  SPFILE db_unique_name: ORCL
  Control File Included: Ckp SCN: 3205409      Ckp time: 2021-01-01 18:13:14
```
  • 现在备份文件状态是AVAILABLE 正常状态。

    RMAN> crosscheck backup;
    
    using channel ORA_DISK_1
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/01vji1dg_1_1 RECID=1 STAMP=1060701616
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-00 RECID=2 STAMP=1060701642
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1 RECID=3 STAMP=1060708733
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-01 RECID=4 STAMP=1060708748
    crosschecked backup piece: found to be 'AVAILABLE'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-02 RECID=5 STAMP=1060712967
    Crosschecked 5 objects
    
  1. 删除所有备份 切换到full目录下,删除所有的备份文件.可以用直接路径删除,也可以进入到“/u01/app/oracle/product/12.2.0/db_1/”目录下 将所有备份片删除。

    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/product/12.2.0/db_1/dbs/01vji1dg_1_1
    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-00
    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1
    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-01
    [oracle@oracle12 ~]$ rm -rf /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-02

  2. 通过备份文件我们可以看到

    RMAN> crosscheck backup;
    
    using channel ORA_DISK_1
    crosschecked backup piece: found to be 'EXPIRED'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/01vji1dg_1_1 RECID=1 STAMP=1060701616
    crosschecked backup piece: found to be 'EXPIRED'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-00 RECID=2 STAMP=1060701642
    crosschecked backup piece: found to be 'EXPIRED'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1 RECID=3 STAMP=1060708733
    crosschecked backup piece: found to be 'EXPIRED'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-01 RECID=4 STAMP=1060708748
    crosschecked backup piece: found to be 'EXPIRED'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-02 RECID=5 STAMP=1060712967
    Crosschecked 5 objects
    
    
  • 所有备份文件现在的状态都是 EXPIRED;
  1. 删除过期的备份文件
    
    RMAN> crosscheck backup;
    
    using channel ORA_DISK_1
    crosschecked backup piece: found to be 'EXPIRED'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/01vji1dg_1_1 RECID=1 STAMP=1060701616
    crosschecked backup piece: found to be 'EXPIRED'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-00 RECID=2 STAMP=1060701642
    crosschecked backup piece: found to be 'EXPIRED'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1 RECID=3 STAMP=1060708733
    crosschecked backup piece: found to be 'EXPIRED'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-01 RECID=4 STAMP=1060708748
    crosschecked backup piece: found to be 'EXPIRED'
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-02 RECID=5 STAMP=1060712967
    Crosschecked 5 objects
    
    
    RMAN> DELETE EXPIRED BACKUP;
    
    using channel ORA_DISK_1
    
    List of Backup Pieces
    BP Key  BS Key  Pc# Cp# Status      Device Type Piece Name
    ------- ------- --- --- ----------- ----------- ----------
    1       1       1   1   EXPIRED     DISK        /u01/app/oracle/product/12.2.0/db_1/dbs/01vji1dg_1_1
    2       2       1   1   EXPIRED     DISK        /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-00
    3       3       1   1   EXPIRED     DISK        /u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1
    4       4       1   1   EXPIRED     DISK        /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-01
    5       5       1   1   EXPIRED     DISK        /u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-02
    
    Do you really want to delete the above objects (enter YES or NO)? YES
    deleted backup piece
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/01vji1dg_1_1 RECID=1 STAMP=1060701616
    deleted backup piece
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-00 RECID=2 STAMP=1060701642
    deleted backup piece
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/03vji8bt_1_1 RECID=3 STAMP=1060708733
    deleted backup piece
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-01 RECID=4 STAMP=1060708748
    deleted backup piece
    backup piece handle=/u01/app/oracle/product/12.2.0/db_1/dbs/c-1587326136-20210101-02 RECID=5 STAMP=1060712967
    Deleted 5 EXPIRED objects
    
    
    RMAN>
    
    
  • 他这里列出了过期的文件 还询问你是否真正的删除。我们填 YES 或 yes 确认删除
  1. 使用list backup;

    RMAN> list backup;
    specification does not match any backup in the repository
    RMAN>

  2. crosscheck backup;

    RMAN> crosscheck backup;
    using channel ORA_DISK_1
    specification does not match any backup in the repository
    RMAN>

  • 确认失效的备份已经删除掉了。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值