zoukankan      html  css  js  c++  java
  • rman 问题

    1. RMAN Repeatedly Fail To Backup Archivelogs with RMAN-20242

    Cause:

    There is a mis-match between the catalog contents and what is physically on disk in the archivelog directory.
    Run the command:
      RMAN> list archivelog all;

      # Compare the output with the contents of the archivelog directory.
      # RMAN-20242 is raised when we try to find a log in the rman repository that does not exist on disk.

    Solution:
     
    If logs are missing from the archivelog directory you need to determine why:

    1. Logs have been moved to another location to prevent archivelog directory from filling up:
       - backup the logs currently in the archivelog directory using the syntax:

          RMAN>backup archivelog sequence between n and n2 thread N delete input;

          # Then move the missing logs back into the archivelog directory and back them up,
          # again with delete input option.

    2. Logs have been irretrievably lost (deleted):
       - In this case you need to resolve the discrepancy between the rman repository contents and what is actually on disk;

          RMAN> crosscheck archivelog all;
          RMAN> delete expired archivelog all;

          # If you do this, full recovery using ANY backup taken before this point is not possible
          # as full recovery cannot tolerate gaps in the redo stream.  
          # Take another full hot backup as soon as possible and change operational processes such that archivelog
          # backups are run more frequently to prevent the archivelog directory from getting full; NEVER delete archivelogs manually,
          # always use RMAN to housekeep archivelogs.

    --

    2. RAC - RMAN backup specific Archivelog Sequence getting error RMAN-20242

    RMAN> run {
     allocate channel d1 type disk;
     backup as copy archivelog from sequence 433 until sequence 434 format '/apps/oracle/rman/CUR/curprod_%t_%s_%r.arc';
     release channel d1;
    }
    using target database control file instead of recovery catalog
    allocated channel: d1
    channel d1: sid=2152 instance=curprod3 devtype=DISK

    Starting backup at 23-JUL-08
    released channel: d1

    RMAN-03002: failure of backup command at 07/23/2008 17:33:45
    RMAN-20242: specification does not match any archive log in the recovery catalog

    Cause:

    This is a RAC database and the thread number was not specified in the backup statement.

    Solution:

    Specify the thread as part of the backup command, for instance:

    RMAN> backup archivelog from sequence 433 until sequence 434 thread 3 format '/apps/oracle/rman/CUR/curprod_%t_%s_%r.arc'; 

    --

    3. RMAN Backup Archivelog using LIKE operator failed RMAN-20242

    RMAN 'archivelog like' method is very useful when trying to backup archived log
    on oracle parallel server and oracle parallel failsafe where archived logs exist
    on all nodes local disks.

    RMAN> run  {
     allocate channel c1 type disk;
     backup
        archivelog like 'E:oracleoradataprodarchive%';
    }
    ...
    ...
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure during compilation of command
    RMAN-03013: command type: backup
    RMAN-06004: ORACLE error from recovery catalog database: RMAN-20242: specification does not match any archivelog in the recovery catalog


    # To resolve the above error, query V$ARCHIVED_LOG to find out the archived log
    # details and note the format of the name column.

    Cause:

    SQL> select * from v$archived_log;

         RECID      STAMP
    ---------- ----------
    NAME
    --------------------------------------------------------------------------------
       THREAD#  SEQUENCE# RESETLOGS_CHANGE# RESETLOGS FIRST_CHANGE# FIRST_TIM
    ---------- ---------- ----------------- --------- ------------- ---------
    NEXT_CHANGE# NEXT_TIME     BLOCKS BLOCK_SIZE CREA REGI STA ARC DEL COMPLETIO
    ------------ --------- ---------- ---------- ---- ---- --- --- --- ---------
             1  419970034
    E:ORACLEORADATAPRODARCHIVEPRODT001S01524.ARC
             1       1524                 1 21-JAN-01        599954 25-JAN-01
          600067 25-JAN-01        103        512 FGRD FGRD NO  YES YES 25-JAN-01



    # Notice the name is in UPPER case - 'E:ORACLEORADATAPRODARCHIVEPRODT001S01524.ARC'.
    # Modify the script and run again.      

    Solution:

    RMAN> run  {
     allocate channel c1 type disk;
     backup
        archivelog like 'E:ORACLEORADATAPRODARCHIVEPROD%' delete input;
     release channel c1;
    }
    ....

    RMAN-03022: compiling command: backup
    RMAN-03023: executing command: backup
    RMAN-08009: channel c1: starting archivelog backupset
    RMAN-08502: set_count=36 set_stamp=420311754 creation_time=29-JAN-01
    RMAN-08014: channel c1: specifying archivelog(s) in backup set
    RMAN-08504: input archivelog thread=1 sequence=1538 recid=15 stamp=420196579
    RMAN-08504: input archivelog thread=1 sequence=1539 recid=16 stamp=420239024
    ...
    RMAN-08013: channel c1: piece 1 created
    RMAN-08503: piece handle=E:ORACLEORA817DATABASE14CGQSMA_1_1 comment=NONE
    RMAN-08525: backup set complete, elapsed time: 00:00:02
    RMAN-08071: channel c1: deleting archivelog(s)
    ...
    RMAN-08514: archivelog filename=E:ORACLEORADATAPRODARCHIVEPRODT001S01541.ARC recid=18 stamp=420310800
    RMAN-08514: archivelog filename=E:ORACLEORADATAPRODARCHIVEPRODT001S01542.ARC recid=19 stamp=420310879
    RMAN-03023: executing command: partial resync
    RMAN-08003: starting partial resync of recovery catalog
    RMAN-08005: partial resync complete

    RMAN-03022: compiling command: release
    RMAN-03023: executing command: release
    RMAN-08031: released channel: c1

    4. Rman-20242 raised for Backup Archivelogs when using SEQUENCE, if logs do not belong to current incarnation


    RMAN list and backup commands when used for archivelogs, specifying sequence or sequence range is
    limited to logs only in current incarnation. For example:

    RMAN> list archivelog all;

    using target database control file instead of recovery catalog

    List of Archived Log Copies
    Key Thrd Seq  S Low Time Name
    ------- ----  ------- - ------------------ ----
    99    1    6  A 09-nov-07 12:30:58 D:ORACLEPRODUCT10.2.0..........O1_MF_1_6_3MM4NR1W_.ARC
    95    1    6  A 09-nov-07 12:30:58 D:ORACLEPRODUCT10.2.0..........O1_MF_1_6_3MJT5FQH_.ARC
    98    1    7  A 12-nov-07 14:52:25 D:ORACLEPRODUCT10.2.0..........O1_MF_1_7_3MM4NN0R_.ARC
    96    1    7  A 12-nov-07 14:52:25 D:ORACLEPRODUCT10.2.0..........O1_MF_1_7_3MM3HO29_.ARC
    97    1    8  A 13-nov-07 11:43:46 D:ORACLEPRODUCT10.2.0..........O1_MF_1_8_3MM4NLFT_.ARC
    100   1    1  A 13-nov-07 12:03:30 D:ORACLEPRODUCT10.2.0..........O1_MF_1_1_3MM5TSTX_.ARC


    Log sequences 6,7 and 8 belong to previous incarnation.
    Log sequence 1 belongs to current incarnation.

    RMAN> list archivelog sequence=6;
    specification does not match any archive log in the recovery catalog


    RMAN> list archivelog 'D:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAV10203ARCHIVELOG2007_11_13O1_MF_1_6_3MM4NR1W_.ARC';

    List of Archived Log Copies
    Key Thrd Seq S Low Time Name
    ------- ---- ------- - ------------------ ----
    99    1    6 A 09-nov-07 12:30:58 D:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAV10203ARCHIVELOG2007_11_13O1_MF_1_6_3MM4NR1W_.ARC

    RMAN> backup archivelog all;
    == ALL logs are backed up.

    RMAN> backup archivelog sequence=6;

    Starting backup at 13-nov-07 12:53:27
    using channel ORA_DISK_1
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of backup command at 11/13/2007 12:53:28
    RMAN-20242: specification does not match any archive log in the recovery catalog

    Cause:

    Bug 5648115 USING LOGSEQ CLAUSE, RMAN CAN NOT BACKUP ARCHIVE LOGS FOR PREVIOUS INCARNATIONS:

    This problem is NOT confined to SAP databases.
    Anyone trying to backup logs using SEQUENCE will find they cannot backup logs from an earlier
    incarnation where the logs are still avaliable on disk. Nor can the logs be listed using SEQUENCE.

     

    Solution:

    Apply the fix for Bug 5648115 when it becomes available.
    Bug 5648115 is fixed in 11GR2.


    Workaround:

    Do NOT use SEQUENCE - use SCN instead - not ideal as you would need to get SCN details from v$archived_log first:

     sql> select first_change#, next_change# from v$archived_log where sequence#=n and resetlogs_change#=N;

    You can take N from the output from:

     RMAN> list incarnation;

  • 相关阅读:
    android 监听ListView中的 item 和button
    android 获取当前系统及应用信息(二)
    MotionEvent中getX()和getRawX()的区别
    HITS 算法(Hypertext Induced Topic Selection)
    放之四海皆适用的设计原则(二)
    源自神话的写作要义之英雄之旅
    这就是搜索引擎:核心技术详解
    源自神话的写作要义之英雄
    使用Spinner和setDropDownViewResource
    友好界面menu
  • 原文地址:https://www.cnblogs.com/feiyun8616/p/6679541.html
Copyright © 2011-2022 走看看