Redo Archive Logs Missing

Hi Gurus
While Configuring Data Guard for ORacle 10g (10.2.0.4) 64 bits on Windows 2007 Server 64 bits.
I got few questions
1. What is the Default mode of Standby Database?
2. Should we Always Start Physical Standby Database to Recover Missing Redo Archive Log?
SQL> startup mount;
ORACLE instance started.
Total System Global Area 591396864 bytes
Fixed Size 2067496 bytes
Variable Size 163578840 bytes
Database Buffers 419430400 bytes
Redo Buffers 6320128 bytes
Database mounted.
SQL> alter databse recover managed standby database disconnect from session;
               Database altered.
3. When there are missing Redo Log Archives e.g.
----On Standby Database--------
SQL> SELECT RESETLOGS_ID,SEQUENCE#,STATUS,ARCHIVED FROM V$ARCHIVED_LOG
2 ORDER BY RESETLOGS_ID,SEQUENCE#;
RESETLOGS_ID SEQUENCE# S ARC
812980008 15 A YES
812980008 16 A YES
812980008 17 A YES
812980008 18 A YES
812980008 19 A YES
812980008 20 A YES
812980008 21 A YES
812980008 22 A YES
812980008 23 A YES
812980008 24 A YES
812980008 25 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 26 A YES
812980008 27 A YES
812980008 28 A YES
812980008 29 A YES
812980008 30 A YES
812980008 31 A YES
812980008 32 A YES
812980008 33 A YES
812980008 34 A YES
812980008 35 A YES
812980008 36 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 37 A YES
812980008 38 A YES
812980008 39 A YES
812980008 40 A YES
812980008 41 A YES
812980008 42 A YES
812980008 43 A YES
29 rows selected.
---------------On Primary Database---------------------
SQL> SELECT RESETLOGS_ID,SEQUENCE#,STATUS,ARCHIVED FROM V$ARCHIVED_LOG
2 ORDER BY RESETLOGS_ID,SEQUENCE# ;
RESETLOGS_ID SEQUENCE# S ARC
*812980008 8 A YES*
*812980008 9 A YES*
*812980008 10 A YES*
*812980008 11 A YES*
*812980008 12 A YES*
*812980008 13 A YES*
*812980008 14 A YES*
812980008 15 A YES
812980008 15 A YES
812980008 16 A YES
812980008 16 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 17 A YES
812980008 17 A YES
812980008 18 A YES
812980008 18 A YES
812980008 19 A YES
812980008 19 A YES
812980008 20 A YES
812980008 20 A YES
812980008 21 A YES
812980008 21 A YES
812980008 22 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 22 A YES
812980008 23 A YES
812980008 23 A YES
812980008 24 A YES
812980008 24 A YES
812980008 25 A YES
812980008 25 A YES
812980008 26 A YES
812980008 26 A YES
812980008 27 A YES
812980008 27 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 28 A YES
812980008 28 A YES
812980008 29 A YES
812980008 29 A YES
812980008 30 A YES
812980008 30 A YES
812980008 31 A YES
812980008 31 A YES
812980008 32 A YES
812980008 32 A YES
812980008 33 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 33 A YES
812980008 34 A YES
812980008 34 A YES
812980008 35 A YES
812980008 35 A YES
812980008 36 A YES
812980008 36 A YES
812980008 37 A YES
812980008 37 A YES
812980008 38 A YES
812980008 38 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 39 A YES
812980008 39 A YES
812980008 40 A YES
812980008 40 A YES
812980008 41 A YES
812980008 41 A YES
812980008 42 A YES
812980008 42 A YES
812980008 43 A YES
812980008 43 A YES
65 rows selected.
Log 8, 9, 10, 11, 12, 13, 14, 15 are missing.
How to Apply / Recover These Logs on Standby Database?
Regards
Thunder2777

Hi
Thunder2777 wrote:
Hi Gurus
While Configuring Data Guard for ORacle 10g (10.2.0.4) 64 bits on Windows 2007 Server 64 bits.
I got few questions
1. What is the Default mode of Standby Database?
What is default mode? I think you want ask in what mode standby database is apply redo logs.
Standby database can apply received redo only MOUNT mode, (your version is 10g, after 11g can apply open mode with READ ONLY WITH APPLY)
2. Should we Always Start Physical Standby Database to Recover Missing Redo Archive Log?
If Standby database opened mount mode, then database can receive redo.
If you are start Redo Apply then MPR can request from primary for missing redo logs.
SQL> startup mount;
ORACLE instance started.
Total System Global Area 591396864 bytes
Fixed Size 2067496 bytes
Variable Size 163578840 bytes
Database Buffers 419430400 bytes
Redo Buffers 6320128 bytes
Database mounted.
SQL> alter databse recover managed standby database disconnect from session;
               Database altered.
It is started recovery, in other words Redo Apply (MRP0 process)
>
3. When there are missing Redo Log Archives e.g.
----On Standby Database-------->
SQL> SELECT RESETLOGS_ID,SEQUENCE#,STATUS,ARCHIVED FROM V$ARCHIVED_LOG
2 ORDER BY RESETLOGS_ID,SEQUENCE#;
RESETLOGS_ID SEQUENCE# S ARC
812980008 15 A YES
812980008 16 A YES
812980008 17 A YES
812980008 18 A YES
812980008 19 A YES
812980008 20 A YES
812980008 21 A YES
812980008 22 A YES
812980008 23 A YES
812980008 24 A YES
812980008 25 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 26 A YES
812980008 27 A YES
812980008 28 A YES
812980008 29 A YES
812980008 30 A YES
812980008 31 A YES
812980008 32 A YES
812980008 33 A YES
812980008 34 A YES
812980008 35 A YES
812980008 36 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 37 A YES
812980008 38 A YES
812980008 39 A YES
812980008 40 A YES
812980008 41 A YES
812980008 42 A YES
812980008 43 A YES
29 rows selected.
---------------On Primary Database---------------------
SQL> SELECT RESETLOGS_ID,SEQUENCE#,STATUS,ARCHIVED FROM V$ARCHIVED_LOG
2 ORDER BY RESETLOGS_ID,SEQUENCE# ;
RESETLOGS_ID SEQUENCE# S ARC
*812980008 8 A YES*
*812980008 9 A YES*
*812980008 10 A YES*
*812980008 11 A YES*
*812980008 12 A YES*
*812980008 13 A YES*
*812980008 14 A YES*
812980008 15 A YES
812980008 15 A YES
812980008 16 A YES
812980008 16 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 17 A YES
812980008 17 A YES
812980008 18 A YES
812980008 18 A YES
812980008 19 A YES
812980008 19 A YES
812980008 20 A YES
812980008 20 A YES
812980008 21 A YES
812980008 21 A YES
812980008 22 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 22 A YES
812980008 23 A YES
812980008 23 A YES
812980008 24 A YES
812980008 24 A YES
812980008 25 A YES
812980008 25 A YES
812980008 26 A YES
812980008 26 A YES
812980008 27 A YES
812980008 27 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 28 A YES
812980008 28 A YES
812980008 29 A YES
812980008 29 A YES
812980008 30 A YES
812980008 30 A YES
812980008 31 A YES
812980008 31 A YES
812980008 32 A YES
812980008 32 A YES
812980008 33 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 33 A YES
812980008 34 A YES
812980008 34 A YES
812980008 35 A YES
812980008 35 A YES
812980008 36 A YES
812980008 36 A YES
812980008 37 A YES
812980008 37 A YES
812980008 38 A YES
812980008 38 A YES
RESETLOGS_ID SEQUENCE# S ARC
812980008 39 A YES
812980008 39 A YES
812980008 40 A YES
812980008 40 A YES
812980008 41 A YES
812980008 41 A YES
812980008 42 A YES
812980008 42 A YES
812980008 43 A YES
812980008 43 A YES
65 rows selected.
Log 8, 9, 10, 11, 12, 13, 14, 15 are missing.It is no missing, you are created standby database, after sequence 15.
As you know , if a sequence redo is not applied, then after is sequenced redo log is cannot apply to standby database.
It means GAP.
There have 43 archived redo log, and your last sequenced archive log received by standby database
and applied.
You can check with following scripts, too
select max(Sequence#) from v$archived_log; -- on primary
select max(Sequence#) from v$archived_log where applied = 'YES';  - on standby  Regards
Mahir M. Quluzade

Similar Messages

  • Data Guard Missing Redo Archive Logs

    Hi All Gurus
    I have setup data guard on windows 2008 server sp2 with oracle 10.2.0.4.0 (Both OS & Oracle DB are 64 bits).
    The Network Admin have shutdown Backup server. Now when I checked the Archive status as follows
    1. select * from v$archive_gap;            It shows a gap in archives       e.g. 891 - 920.
    2. SELECT THREAD#, SEQUENCE#, APPLIED FROM V$ARCHIVED_LOG;                 e.g. 891-920 Not Applied.
    Now I issue following command
    1. SELECT RECOVERY_MODE FROM V$ARCHIVE_DEST_STATUS;                                e.g. MANAGED REAL TIME APPLY
    2.  DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; 
    or  ALTER DATABASE RECOVER  managed standby database disconnect from session ;     
                        e.g.      incompatible Media Recovery in Progress
    3. Alert Log says Adjust CONTROL_FILE_RECORD_KEEP_TIME to sufficient limits.
    I have also adjusted CONTROL_FILE_RECORD_KEEP_TIME to 90 days as follows
    4. show parameter control_file          e.g. CONTROL_FILE_RECORD_KEEP_TIME=90
    5. I have checked firewall and tnsping for both Primary and Standby Server e.g. tnsping CVMIS (Primary), CVMISBK (Standby)
         Both are OK. TNSPING is showing 10-30msec delay.
    6. I have checked the web for gap Removal, Mostly are using RMAN method to Backup and then Restore to Standby DB.
          Is there any other way to fill this gap without using RMAN? I mean DG automatically fill it by using some commands
         are settings?
    Kind Regards
    Thunder2777

    Hi CKPT
    Thanks for the scripts which I executed today on 24 Mon 2013. Here are the Results.
    Standby Database Script Output:
    NAME                           DISPLAY_VALUE
    db_file_name_convert
    db_name                            UMIS
    db_unique_name                 UMISBK
    dg_broker_config_file1         C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DR1UMISBK.DAT
    dg_broker_config_file2         C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DR2UMISBK.DAT
    dg_broker_start                TRUE
    fal_client                          (DESCRIPTION=(ADDRESS_LIST=(AD
                                           DRESS=(PROTOCOL=tcp)(HOST=WIN-
                                           7VSLKL4CGU2)(PORT=1521)))(CONN
                                           ECT_DATA=(SERVICE_NAME=umisbk_
                                           XPT)(INSTANCE_NAME=umisbk)(SER
                                           VER=dedicated)))
    fal_server                         (DESCRIPTION=(ADDRESS_LIST=(AD
                                           DRESS=(PROTOCOL=tcp)(HOST=CV-A
                                           JKDB)(PORT=1521)))(CONNECT_DAT
                                           A=(SERVICE_NAME=umis_XPT)(SERV
                                           ER=dedicated)))
    local_listener
    log_archive_config               DG_CONFIG=(UMIS,UMISBK)
    log_archive_dest_2             SERVICE=UMIS LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=UMIS
    log_archive_dest_state_2           ENABLE
    log_archive_max_processes      10
    log_file_name_convert                E:\oracle\product\10.2.0\flash_recovery_area\UMIS\, D:\ORACLE\FRA\UMISBK
    remote_login_passwordfile         EXCLUSIVE
    standby_archive_dest                D:\ORACLE\FRA\UMISBK\ARCHIVELOG\
    standby_file_management                         AUTO
    NAME       DB_UNIQUE_NAME                 PROTECTION_MODE DATABASE_R OPEN_MODE
    UMIS       UMISBK      MAXIMUM PERFORMANCE PHYSICAL STANDBY MOUNTED
       THREAD# MAX(SEQUENCE#)
             1            890
    PROCESS   STATUS          THREAD#  SEQUENCE#
    ARCH      CONNECTED             0          0
    ARCH      CONNECTED             0          0
    ARCH      CONNECTED             0          0
    ARCH      CONNECTED             0          0
    ARCH      CLOSING                   1       1062
    ARCH      CONNECTED             0          0
    ARCH      CONNECTED             0          0
    ARCH      CONNECTED             0          0
    ARCH      CONNECTED             0          0
    ARCH      CONNECTED             0          0
    MRP0      WAIT_FOR_GAP          1        891
    RFS       IDLE                  1       1063
    RFS       IDLE                  0          0
    NAME                           VALUE      UNIT                           TIME_COMPUTED
    apply finish time                         day(2) to second(1) interval
    apply lag                                   day(2) to second(0) interval
    estimated startup time                22         second
    standby has been open              N
    transport lag                             day(2) to second(0) interval
       THREAD# LOW_SEQUENCE# HIGH_SEQUENCE#
             1           891            948
    NAME                                                            Size MB    Used MB
    D:\ORACLE\FRA                                                      2048          0
    STANDBY Alert Log:
    Mon Jun 24 10:19:55 2013
    Redo Shipping Client Connected as PUBLIC
    -- Connected User is Valid
    RFS[2]: Assigned to RFS process 1868
    RFS[2]: Identified database type as 'physical standby'
    RFS[2]: Successfully opened standby log 5: 'D:\ORACLE\ORADATA\UMISBK\SLOG02.LOG'
    Mon Jun 24 10:22:09 2013
    Adjusting the default value of parameter parallel_max_servers
    from 160 to 135 due to the value of parameter processes (150)
    Mon Jun 24 10:22:09 2013
    Starting ORACLE instance (normal)
    Mon Jun 24 10:22:09 2013
    alter database mount standby database
    ORA-1154 signalled during: alter database mount standby database...
    Mon Jun 24 10:22:09 2013
    alter database recover managed standby database using current logfile disconnect from session
    Mon Jun 24 10:22:40 2013
    ORA-1153 signalled during: alter database recover managed standby database using current logfile disconnect from session...
    Adjusting the default value of parameter parallel_max_servers
    from 160 to 135 due to the value of parameter processes (150)
    Mon Jun 24 10:24:40 2013
    Starting ORACLE instance (normal)
    Mon Jun 24 10:24:40 2013
    alter database mount standby database
    ORA-1154 signalled during: alter database mount standby database...
    Mon Jun 24 10:24:40 2013
    alter database recover managed standby database using current logfile disconnect from session
    Mon Jun 24 10:25:11 2013
    ORA-1153 signalled during: alter database recover managed standby database using current logfile disconnect from session...
    Mon Jun 24 10:26:46 2013
    Adjusting the default value of parameter parallel_max_servers
    from 160 to 135 due to the value of parameter processes (150)
    Mon Jun 24 10:26:46 2013
    Starting ORACLE instance (normal)
    Mon Jun 24 10:28:04 2013
    alter database mount standby database
    Mon Jun 24 10:28:04 2013
    ORA-1154 signalled during: alter database mount standby database...
    PRIMARY Database Script Output:
    NAME                           DISPLAY_VALUE
    db_file_name_convert           UMIS, UMISBK
    db_name                             UMIS
    db_unique_name                  UMIS
    dg_broker_config_file1           E:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DR1UMIS.DAT
    dg_broker_config_file2           E:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DR2UMIS.DAT
    dg_broker_start                   TRUE
    fal_client                             UMIS
    fal_server                            UMISBK
    local_listener
    log_archive_config               DG_CONFIG=(UMIS,UMISBK)
    log_archive_dest_2             service="(DESCRIPTION=(ADDRESS
                                             _LIST=(ADDRESS=(PROTOCOL=tcp)(
                                             HOST=WIN-7VSLKL4CGU2)(PORT=152
                                             1)))(CONNECT_DATA=(SERVICE_NAM
                                             E=umisbk_XPT)(INSTANCE_NAME=um
                                             isbk)(SERVER=dedicated)))",
                                             LGWR ASYNC NOAFFIRM delay=0 O
                                             PTIONAL max_failure=0 max_conn
                                             ections=1   reopen=300 db_uniq
                                             ue_name="umisbk" register net_
                                             timeout=180  valid_for=(online
                                             _logfile,primary_role)
    log_archive_dest_state_2          ENABLE
    log_archive_max_processes      2
    log_file_name_convert               E:\oracle\product\10.2.0\flash_recOvery_area\UMIS ARCHIVELOG\, D:\ORACLE\FRA\UMISBK\ARCHIVELOG\
    remote_login_passwordfile            EXCLUSIVE
    standby_archive_dest
    standby_file_management             AUTO
    NAME       DB_UNIQUE_NAME                 PROTECTION_MODE      DATABASE_R OPEN_MODE  SWITCHOVER_STATUS
    UMIS       UMIS                   MAXIMUM PERFORMANCE  PRIMARY    READ WRITE SESSIONS ACTIVE
       THREAD# MAX(SEQUENCE#)
             1           1062
        Thread Last Sequence Received Last Sequence Applied Difference
             1                   1062                  1062          0
             1                   1062                  1062          0
    SEVERITY        ERROR_CODE timestamp            MESSAGE
    Error                12514 24-JUN-2013 10:08:02 LGWR: Error 12514 creating archivelog file '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))
    Error                12514 24-JUN-2013 10:08:04 LGWR: Error 12514 creating archivelog file '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))
    Error                12514 24-JUN-2013 10:08:07 FAL[server, ARC1]: Error 12514 creating remote archivelog file '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))'
    Error                12514 24-JUN-2013 10:08:31 LGWR: Error 12514 creating archivelog file '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))
    Error                12514 24-JUN-2013 10:08:59 FAL[server, ARC1]: Error 12514 creating remote archivelog file '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))'
    Error                12514 24-JUN-2013 10:14:57 PING[ARC1]: Heartbeat failed to connect to standby '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))'. Error is 12514.
    ID STATUS    DB_MODE         TYPE RECOVERY_MODE        PROTECTION_MODE      SRLs ACTIVE ARCHIVED_SEQ#
      1 VALID     OPEN            ARCH IDLE                 MAXIMUM PERFORMANCE     0      0          1062
      2 VALID     UNKNOWN         LGWR UNKNOWN              MAXIMUM PERFORMANCE     4      3          1054
    NAME                                                            Size MB    Used MB
    E:\oracle\product\10.2.0\flash_recovery_area                       2048          0
    Primary Alert Log:
    System parameters with non-default values:
      processes                      = 150
      __shared_pool_size        = 335544320
      __large_pool_size           = 16777216
      __java_pool_size            = 33554432
      __streams_pool_size      = 0
      sga_target                     = 1258291200
      control_files            = E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\CONTROL01.CTL, E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\CONTROL02.CTL, E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\CONTROL03.CTL
      db_file_name_convert     = UMIS, UMISBK
      log_file_name_convert    = E:\oracle\product\10.2.0\flash_recOvery_area\UMIS ARCHIVELOG\, D:\ORACLE\FRA\UMISBK\ARCHIVELOG\
      control_file_record_keep_time= 90
      db_block_size                      = 8192
      __db_cache_size                 = 855638016
      compatible                           = 10.2.0.3.0
      log_archive_config                = DG_CONFIG=(UMIS,UMISBK)
      log_archive_dest_1       = location="E:\oracle\product\10.2.0\flash_recovery_area\UMIS\ARCHIVELOG", valid_for=(ONLINE_LOGFILE,ALL_ROLES)
      log_archive_dest_2       = service="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))",    LGWR ASYNC NOAFFIRM delay=0 OPTIONAL max_failure=0 max_connections=1   reopen=300 db_unique_name="umisbk" register net_timeout=180  valid_for=(online_logfile,primary_role)
      log_archive_dest_state_1 = ENABLE
      log_archive_dest_state_2 = ENABLE
      log_archive_max_processes= 2
      log_archive_min_succeed_dest= 1
      standby_archive_dest     =
      log_archive_trace        = 0
      log_archive_format       = ARC_s%S_r%R_t%T.arc
      fal_client               = UMIS
      fal_server               = UMISBK
      archive_lag_target       = 0
      db_file_multiblock_read_count= 16
      db_recovery_file_dest    = E:\oracle\product\10.2.0\flash_recovery_area
      db_recovery_file_dest_size= 2147483648
      standby_file_management  = AUTO
      undo_management          = AUTO
      undo_tablespace          = UNDOTBS1
      remote_login_passwordfile= EXCLUSIVE
      db_domain                =
      dispatchers              = (PROTOCOL=TCP) (SERVICE=UMISXDB)
      job_queue_processes      = 10
      audit_file_dest          = E:\ORACLE\PRODUCT\10.2.0\ADMIN\UMIS\ADUMP
      background_dump_dest     = E:\ORACLE\PRODUCT\10.2.0\ADMIN\UMIS\BDUMP
      user_dump_dest           = E:\ORACLE\PRODUCT\10.2.0\ADMIN\UMIS\UDUMP
      core_dump_dest           = E:\ORACLE\PRODUCT\10.2.0\ADMIN\UMIS\CDUMP
      db_name                  = UMIS
      open_cursors             = 300
      pga_aggregate_target     = 417333248
      dg_broker_start          = TRUE
    PSP0 started with pid=3, OS id=2824
    MMAN started with pid=4, OS id=2820
    DBW0 started with pid=5, OS id=2396
    LGWR started with pid=6, OS id=2676
    CKPT started with pid=7, OS id=2692
    SMON started with pid=8, OS id=2096
    RECO started with pid=9, OS id=2924
    CJQ0 started with pid=10, OS id=2832
    MMON started with pid=11, OS id=3052
    Mon Jun 24 10:07:34 2013
    starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
    Mon Jun 24 10:07:34 2013
    starting up 1 shared server(s) ...
    MMNL started with pid=12, OS id=2700
    DMON started with pid=15, OS id=2908
    PMON started with pid=2, OS id=2812
    Mon Jun 24 10:07:35 2013
    alter database mount exclusive
    Mon Jun 24 10:07:40 2013
    Setting recovery target incarnation to 2
    Mon Jun 24 10:07:42 2013
    Successful mount of redo thread 1, with mount id 316954407
    Mon Jun 24 10:07:42 2013
    Database mounted in Exclusive Mode
    Completed: alter database mount exclusive
    Mon Jun 24 10:07:42 2013
    alter database open
    Mon Jun 24 10:07:47 2013
    Starting Data Guard Broker (DMON)
    NSV1 started with pid=16, OS id=3552
    Mon Jun 24 10:07:50 2013
    Beginning crash recovery of 1 threads
    parallel recovery started with 7 processes
    INSV started with pid=24, OS id=3628
    Mon Jun 24 10:07:52 2013
    Started redo scan
    Mon Jun 24 10:07:53 2013
    Completed redo scan
    144 redo blocks read, 60 data blocks need recovery
    Mon Jun 24 10:07:53 2013
    Started redo application at
    Thread 1: logseq 1059, block 8380
    Mon Jun 24 10:07:53 2013
    Recovery of Online Redo Log: Thread 1 Group 3 Seq 1059 Reading mem 0
      Mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\REDO03.LOG
    Mon Jun 24 10:07:53 2013
    Completed redo application
    Mon Jun 24 10:07:53 2013
    Completed crash recovery at
    Thread 1: logseq 1059, block 8524, scn 26461769
    60 data blocks read, 60 data blocks written, 144 redo blocks read
    Mon Jun 24 10:07:57 2013
    LGWR: STARTING ARCH PROCESSES
    ARC0 started with pid=25, OS id=3804
    ARC1 started with pid=26, OS id=3808
    Mon Jun 24 10:07:57 2013
    ARC0: Archival started
    ARC1: Archival started
    LGWR: STARTING ARCH PROCESSES COMPLETE
    RSM0 started with pid=27, OS id=3812
    LNS1 started with pid=28, OS id=3824
    Mon Jun 24 10:08:01 2013
    Thread 1 advanced to log sequence 1060 (thread open)
    Thread 1 opened at log sequence 1060
      Current log# 1 seq# 1060 mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\REDO01.LOG
    Successful open of redo thread 1
    Mon Jun 24 10:08:02 2013
    MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set
    Mon Jun 24 10:08:02 2013
    ARC1: STARTING ARCH PROCESSES
    Mon Jun 24 10:08:02 2013
    ARC0: Becoming the 'no FAL' ARCH
    ARC0: Becoming the 'no SRL' ARCH
    Mon Jun 24 10:08:02 2013
    ARC2: Archival started
    Mon Jun 24 10:08:02 2013
    ARC1: STARTING ARCH PROCESSES COMPLETE
    ARC2 started with pid=29, OS id=3544
    ARC1: Becoming the heartbeat ARCH
    Mon Jun 24 10:08:02 2013
    LGWR: Setting 'active' archival for destination LOG_ARCHIVE_DEST_2
    Error 12514 received logging on to the standby
    LGWR: Error 12514 creating archivelog file '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))'
    Mon Jun 24 10:08:02 2013
    Errors in file e:\oracle\product\10.2.0\admin\umis\bdump\umis_lns1_3824.trc:
    ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    Mon Jun 24 10:08:02 2013
    SMON: enabling cache recovery
    Mon Jun 24 10:08:03 2013
    ALTER SYSTEM SET log_archive_dest_2='service="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))"','   LGWR ASYNC NOAFFIRM delay=0 OPTIONAL max_failure=0 max_connections=1   reopen=300 db_unique_name="umisbk" register net_timeout=180  valid_for=(online_logfile,primary_role)' SCOPE=BOTH;
    Mon Jun 24 10:08:03 2013
    LNS: Failed to archive log 1 thread 1 sequence 1060 (12514)
    Mon Jun 24 10:08:03 2013
    ALTER SYSTEM SET log_archive_dest_state_2='ENABLE' SCOPE=BOTH;
    Mon Jun 24 10:08:03 2013
    ALTER DATABASE OPEN
    Mon Jun 24 10:08:03 2013
    ORA-1531 signalled during: ALTER DATABASE OPEN...
    Mon Jun 24 10:08:04 2013
    Error 12514 received logging on to the standby
    LGWR: Error 12514 creating archivelog file '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))'
    Mon Jun 24 10:08:04 2013
    Errors in file e:\oracle\product\10.2.0\admin\umis\bdump\umis_lns1_3824.trc:
    ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    LNS: Failed to archive log 1 thread 1 sequence 1060 (12514)
    Mon Jun 24 10:08:04 2013
    Successfully onlined Undo Tablespace 1.
    Mon Jun 24 10:08:04 2013
    SMON: enabling tx recovery
    Mon Jun 24 10:08:05 2013
    Database Characterset is WE8MSWIN1252
    Opening with internal Resource Manager plan
    where NUMA PG = 1, CPUs = 8
    Mon Jun 24 10:08:06 2013
    Error 12514 received logging on to the standby
    Mon Jun 24 10:08:06 2013
    Errors in file e:\oracle\product\10.2.0\admin\umis\bdump\umis_arc1_3808.trc:
    ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    FAL[server, ARC1]: Error 12514 creating remote archivelog file '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))'
    FAL[server, ARC1]: FAL archive failed, see trace file.
    Mon Jun 24 10:08:07 2013
    replication_dependency_tracking turned off (no async multimaster replication found)
    Mon Jun 24 10:08:07 2013
    Errors in file e:\oracle\product\10.2.0\admin\umis\bdump\umis_arc1_3808.trc:
    ORA-16055: FAL request rejected
    Mon Jun 24 10:08:07 2013
    ARCH: FAL archive failed. Archiver continuing
    Mon Jun 24 10:08:08 2013
    Starting background process QMNC
    QMNC started with pid=28, OS id=3984
    Mon Jun 24 10:08:15 2013
    db_recovery_file_dest_size of 2048 MB is 0.00% used. This is a
    user-specified limit on the amount of space that will be used by this
    database for recovery-related files, and does not reflect the amount of
    space available in the underlying filesystem or ASM diskgroup.
    Mon Jun 24 10:08:15 2013
    Completed: alter database open
    Mon Jun 24 10:08:19 2013
    ALTER SYSTEM SET standby_archive_dest='' SCOPE=BOTH SID='umis';
    Mon Jun 24 10:08:19 2013
    ALTER SYSTEM SET log_archive_trace=0 SCOPE=BOTH SID='umis';
    Mon Jun 24 10:08:19 2013
    ALTER SYSTEM SET log_archive_format='ARC_s%S_r%R_t%T.arc' SCOPE=SPFILE SID='umis';
    Mon Jun 24 10:08:20 2013
    ALTER SYSTEM SET standby_file_management='AUTO' SCOPE=BOTH SID='*';
    Mon Jun 24 10:08:20 2013
    ALTER SYSTEM SET archive_lag_target=0 SCOPE=BOTH SID='*';
    Mon Jun 24 10:08:20 2013
    ALTER SYSTEM SET log_archive_max_processes=2 SCOPE=BOTH SID='*';
    Mon Jun 24 10:08:21 2013
    ALTER SYSTEM SET log_archive_min_succeed_dest=1 SCOPE=BOTH SID='*';
    Mon Jun 24 10:08:21 2013
    ALTER SYSTEM SET db_file_name_convert='UMIS','UMISBK' SCOPE=SPFILE;
    Mon Jun 24 10:08:21 2013
    ALTER SYSTEM SET log_file_name_convert='E:\oracle\product\10.2.0\flash_recOvery_area\UMIS ARCHIVELOG\','D:\ORACLE\FRA\UMISBK\ARCHIVELOG\' SCOPE=SPFILE;
    Mon Jun 24 10:08:21 2013
    ALTER SYSTEM ARCHIVE LOG
    Mon Jun 24 10:08:21 2013
    Thread 1 cannot allocate new log, sequence 1061
    Private strand flush not complete
      Current log# 1 seq# 1060 mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\REDO01.LOG
    Mon Jun 24 10:08:22 2013
    Shutting down archive processes
    Mon Jun 24 10:08:22 2013
    Thread 1 advanced to log sequence 1061 (LGWR switch)
    Mon Jun 24 10:08:22 2013
      Current log# 2 seq# 1061 mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\REDO02.LOG
    Mon Jun 24 10:08:27 2013
    ARCH shutting down
    ARC2: Archival stopped
    Mon Jun 24 10:08:27 2013
    ALTER SYSTEM SET log_archive_dest_2='service="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))"','   LGWR ASYNC NOAFFIRM delay=0 OPTIONAL max_failure=0 max_connections=1   reopen=300 db_unique_name="umisbk" register net_timeout=180  valid_for=(online_logfile,primary_role)' SCOPE=BOTH;
    Mon Jun 24 10:08:27 2013
    ALTER SYSTEM SET log_archive_dest_state_2='ENABLE' SCOPE=BOTH;
    Mon Jun 24 10:08:27 2013
    ALTER SYSTEM ARCHIVE LOG
    Mon Jun 24 10:08:27 2013
    Thread 1 cannot allocate new log, sequence 1062
    Private strand flush not complete
      Current log# 2 seq# 1061 mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\REDO02.LOG
    LNS1 started with pid=29, OS id=4204
    Mon Jun 24 10:08:31 2013
    Thread 1 advanced to log sequence 1062 (LGWR switch)
      Current log# 3 seq# 1062 mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\REDO03.LOG
    Mon Jun 24 10:08:31 2013
    Error 12514 received logging on to the standby
    LGWR: Error 12514 creating archivelog file '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))'
    Mon Jun 24 10:08:31 2013
    Errors in file e:\oracle\product\10.2.0\admin\umis\bdump\umis_lns1_4204.trc:
    ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    LNS: Failed to archive log 3 thread 1 sequence 1062 (12514)
    Mon Jun 24 10:08:59 2013
    Error 12514 received logging on to the standby
    Mon Jun 24 10:08:59 2013
    Errors in file e:\oracle\product\10.2.0\admin\umis\bdump\umis_arc1_3808.trc:
    ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    FAL[server, ARC1]: Error 12514 creating remote archivelog file '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))'
    FAL[server, ARC1]: FAL archive failed, see trace file.
    Mon Jun 24 10:08:59 2013
    Errors in file e:\oracle\product\10.2.0\admin\umis\bdump\umis_arc1_3808.trc:
    ORA-16055: FAL request rejected
    ARCH: FAL archive failed. Archiver continuing
    Mon Jun 24 10:14:57 2013
    Error 12514 received logging on to the standby
    Mon Jun 24 10:14:57 2013
    Errors in file e:\oracle\product\10.2.0\admin\umis\bdump\umis_arc1_3808.trc:
    ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    PING[ARC1]: Heartbeat failed to connect to standby '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))'. Error is 12514.
    Mon Jun 24 10:18:46 2013
    Redo Shipping Client Connected as PUBLIC
    -- Connected User is Valid
    Redo Shipping Client Connected as PUBLIC
    -- Connected User is Valid
    Mon Jun 24 10:19:23 2013
    ALTER SYSTEM SET log_archive_dest_2='service="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=WIN-7VSLKL4CGU2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=umisbk_XPT)(INSTANCE_NAME=umisbk)(SERVER=dedicated)))"','   LGWR ASYNC NOAFFIRM delay=0 OPTIONAL max_failure=0 max_connections=1   reopen=300 db_unique_name="umisbk" register net_timeout=180  valid_for=(online_logfile,primary_role)' SCOPE=BOTH;
    Mon Jun 24 10:19:23 2013
    ALTER SYSTEM SET log_archive_dest_state_2='ENABLE' SCOPE=BOTH;
    Mon Jun 24 10:19:23 2013
    ALTER SYSTEM ARCHIVE LOG
    Mon Jun 24 10:19:24 2013
    Thread 1 cannot allocate new log, sequence 1063
    Private strand flush not complete
      Current log# 3 seq# 1062 mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\REDO03.LOG
    LNS1 started with pid=18, OS id=4300
    Mon Jun 24 10:19:28 2013
    Thread 1 advanced to log sequence 1063 (LGWR switch)
      Current log# 1 seq# 1063 mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\UMIS\REDO01.LOG
    Mon Jun 24 10:19:28 2013
    LNS: Standby redo logfile selected for thread 1 sequence 1063 for destination LOG_ARCHIVE_DEST_2
    Mon Jun 24 10:19:58 2013
    ARC1: Standby redo logfile selected for thread 1 sequence 1062 for destination LOG_ARCHIVE_DEST_2
    Well there seems to be some connectivity issue on Primary DB (I Guess!!!).
    But when I issue tnsping from Primary Database, the result is
    SQL> host tnsping umisbk (Standy DB Name)  --->   Status: OK [10-30msec]
    And when I issue tnsping from Standby Database, the result is
    SQL> host tnsping umis (Primary DB Name)    --->   Status: OK [10-30msec]
    So what your Recommendation.
    Kind Regards
    Thuhnder2777

  • Archive log missing on standby: FAL[client]: Failed to request gap sequence

    My current environment is Oracle 10.2.0.4 with ASM 10.2.0.4 on a 2 node RAC in production and a standby that is the same setup. I'm also running on Oracle Linux 5. Almost daily now an archivelog doesnt make it to the standby and oracle doesnt seem to resolve the gap sequence from the primary. If I stop and restart recovery it gets the logfile and continues recovery just fine. I have checked my fal_client and fal_server settings and they look good. The logs after this error do continue to get written to the standby but the standby wont continue recovery until I stop and restart recovery and it fetches this missing log.
    The only thing I know thats happening is that the firewall people are disconnecting any connections that are inactive for 60 minutes and recently did an upgrade that they are claiming didnt change anything:)  I dont know if this is causing this problem or not. Any thoughts on what might be happening?
    Error in standby alert.log:
    Tue Jun 29 23:15:35 2010
    RFS[258]: Possible network disconnect with primary database
    Tue Jun 29 23:15:36 2010
    Fetching gap sequence in thread 2, gap sequence 9206-9206
    Tue Jun 29 23:16:46 2010
    FAL[client]: Failed to request gap sequence
    GAP - thread 2 sequence 9206-9206
    DBID 661398854 branch 714087609
    FAL[client]: All defined FAL servers have been attempted.
    Error on primary alert.log:
    Tue Jun 29 23:00:07 2010
    ARC0: Creating remote archive destination LOG_ARCHIVE_DEST_2: 'WSSPRDB' (thread 1 sequence 9265)
    (WSSPRD1)
    ARC0: Transmitting activation ID 0x29c37469
    Tue Jun 29 23:00:07 2010
    Errors in file /u01/app/oracle/admin/WSSPRD/bdump/wssprd1_arc0_14024.trc:
    ORA-03135: connection lost contact
    FAL[server, ARC0]: FAL archive failed, see trace file.
    Tue Jun 29 23:00:07 2010
    Errors in file /u01/app/oracle/admin/WSSPRD/bdump/wssprd1_arc0_14024.trc:
    ORA-16055: FAL request rejected
    ARCH: FAL archive failed. Archiver continuing
    Tue Jun 29 23:00:07 2010
    ORACLE Instance WSSPRD1 - Archival Error. Archiver continuing.
    Tue Jun 29 23:00:41 2010
    Redo Shipping Client Connected as PUBLIC
    -- Connected User is Valid
    Tue Jun 29 23:00:41 2010
    FAL[server, ARC2]: Begin FAL archive (dbid 0 branch 714087609 thread 2 sequence 9206 dest WSSPRDB)
    FAL[server, ARC2]: FAL archive failed, see trace file.
    Tue Jun 29 23:00:43 2010
    Errors in file /u01/app/oracle/admin/WSSPRD/bdump/wssprd1_arc2_14028.trc:
    ORA-16055: FAL request rejected
    ARCH: FAL archive failed. Archiver continuing
    Tue Jun 29 23:00:43 2010
    ORACLE Instance WSSPRD1 - Archival Error. Archiver continuing.
    Tue Jun 29 23:01:16 2010
    Redo Shipping Client Connected as PUBLIC
    -- Connected User is Valid
    Tue Jun 29 23:15:01 2010
    Thread 1 advanced to log sequence 9267 (LGWR switch)
    I have checked the trace files that get spit out but they arent anything meaningful to me as to whats really happening. Snipit of the trace file:
    tkcrrwkx: Starting to process work request
    tkcrfgli: SRL header: 0
    tkcrfgli: SRL tail: 0
    tkcrfgli: ORL to arch: 4
    tkcrfgli: le# seq thr for bck tba flags
    tkcrfgli: 1 359 1 2 0 3 0x0008 ORL active cur
    tkcrfgli: 2 358 1 0 1 1 0x0000 ORL active
    tkcrfgli: 3 361 2 4 0 0 0x0008 ORL active cur
    tkcrfgli: 4 360 2 0 3 2 0x0000 ORL active
    tkcrfgli: 5 -- entry deleted --
    tkcrfgli: 6 -- entry deleted --
    tkcrfgli: 7 -- entry deleted --
    tkcrfgli: 8 -- entry deleted --
    tkcrfgli: 9 -- entry deleted --
    tkcrfgli: 191 -- entry deleted --
    tkcrfgli: 192 -- entry deleted --
    *** 2010-03-27 01:30:32.603 20998 kcrr.c
    tkcrrwkx: Request from LGWR to perform: <startup>
    tkcrrcrlc: Starting CRL ARCH check
    *** 2010-03-27 01:30:32.603 66085 kcrr.c
    Beginning controlfile transaction 0x0x7fffd0b53198 [kcrr.c:20395 (14011)]
    *** 2010-03-27 01:30:32.645 66173 kcrr.c
    Acquired controlfile transaction 0x0x7fffd0b53198 [kcrr.c:20395 (14024)]
    *** 2010-03-27 01:30:32.649 66394 kcrr.c
    Ending controlfile transaction 0x0x7fffd0b53198 [kcrr.c:20397]
    tkcrrasgn: Checking for 'no FAL', 'no SRL', and 'HB' ARCH process
    # HB NoF NoS CRL Name
    29 NO NO NO NO ARC0
    28 NO YES YES NO ARC1
    27 NO NO NO NO ARC2
    26 NO NO NO NO ARC3
    25 YES NO NO NO ARC4
    24 NO NO NO NO ARC5
    23 NO NO NO NO ARC6
    22 NO NO NO NO ARC7
    21 NO NO NO NO ARC8
    20 NO NO NO NO ARC9
    Thanks.
    Kristi

    It's the network that's messing up; unlikely due to firewall timeout as it waits for 60 minutes and you are switching every 15 minutes. There may be some other network glitch that needs rectified.
    In any case - arch file missing/ corrupt / halfway through - FAL setting should have refetched the problematic archive log automatically.
    As many had suggested already, the best way to resolve RFS issues I believe is to use real-time apply by configuring standby redo logs. It's very easy to configure it and you can opt for real-time apply even in max-performance mode that you are using right now.
    Even though you are maintaining (I guess) 1-1 between primary & standby instances, you can provide both primary instances in fal_server (like fal_server=string1,string2). See if that helps.
    lastly, check if you are having simiar issue at other times as well that might be getting rectified automatically as expected.
    col message for a80
    col time for a20
    select message, to_char(timestamp,'dd-mon-rr hh24:mi:ss') time
    from v$dataguard_status
    where severity in ('Error','Fatal')
    order by timestamp;
    Cheers.

  • Archive log miss : How to restart capture

    Hi Gurus,
    I configured hotlog CDC distributed on 10.2.0.4 Databases.
    I make a mistake: in my source Db I have deleted an Archive log,
    and now the state of Capture process in V_$STREAM_CAPTURE is "WAITING FOR REDO: LAST SCN MINED 930696".
    Now I'd like to restart the capture process from the next archive (just after the missed archive)
    How is it possible?
    tnk Fabio

    I'm sorry to tell you that, but it's not possible. (Just as it's not possible to recover database with missing logs...)
    You will have to recreate the capture process and to re-instantiate the replicated tables.
    Regards,

  • Archived log missed in standby database

    Hi,
    OS; Windows 2003 server
    Oracle: 10.2.0.4
    Data Guard: Max Performance
    Dataguard missed some of the archivelog files and but latest log files are applying. standby database is not in sync with primary.
    SELECT LOCAL.THREAD#, LOCAL.SEQUENCE# FROM (SELECT THREAD#, SEQUENCE# FROM V$ARCHIVED_LOG WHERE DEST_ID=1) LOCAL WHERE LOCAL.SEQUENCE# NOT IN (SELECT SEQUENCE# FROM V$ARCHIVED_LOG WHERE DEST_ID=2 AND THREAD# = LOCAL.THREAD#);
    I queried above command and I found some files are missed in standby.
    select status, type, database_mode, recovery_mode,protection_mode, srl, synchronization_status,synchronized from V$ARCHIVE_DEST_STATUS where dest_id=2;
    STATUS TYPE DATABASE_MODE RECOVERY_MODE PROTECTION_MODE SRL SYNCHRONIZATION_STATUS SYN
    VALID PHYSICAL MOUNTED-STANDBY MANAGED MAXIMUM PERFORMANCE NO CHECK CONFIGURATION NO
    Anyone can tell me how to apply those missed archive log files.
    Thanks in advacne

    Deccan Charger wrote:
    I got below error.
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION
    ERROR at line 1:
    ORA-01153: an incompatible media recovery is activeYou need to essentially do the following.
    1) Stop managed recovery on the standby.
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;2) Resolve the archive log gap - if you have configured FAL_SERVER and FAL_CLIENT Oracle should do this when you follow step 3 below, as you've manually copied the missed logs you should be OK
    3) restart managed recovery using the command shown above.
    You can monitor archive log catchup using the alert.log or your original query.
    Niall Litchfield
    http://www.orawin.info/
    Edited by: Niall Litchfield on May 4, 2010 2:29 PM
    missed tag

  • Redo / Archive Log Best Practices?

    I am a newb when it comes to Oracle administration. The problem is that our "DBA" knows even less about it.
    I'd like to get some advice/recommendations on redo and archive logs.
    We are currently running:
    Windows 2000 Server
    Oracle 8.1.7
    Oracle DB is ~50gb
    ~250 users
    Database is under fairly heavy load, as it is used to run the company's primary accounting software.
    Recently when reviewing back up procedures, I realized that our "DBA" did not have archive logging turned on. This obviously is a problem. Our DBA was relying solely on a data dump every night that was then backed up to tape. I was forced to take care of this, as the "DBA" didn't have any knowledge on this subject. I got archive logging turned on, changed the init file, etc. etc.
    Where the problem comes in, and where my questions come from... The database was writing archive logs ~2-3 mins, sometimes less depending on the database load. Oracle was configured to use 3 redo logs @ ~105mb each. The server was getting "Archive process error: Oracle instance xxxx - Cannot allocate log, archival required." I changed the redo logs to run 5 logs at ~200mb each. I also added a scsi drive to the server for the sole purpose of storing the archive logs. Log Buffer was set at 64k, I upped this to 1mb.
    My specific questions are:
    - How fast should logs be being written?
    - Should I up the number of redo logfiles, or up the size of each?
    - Should I be writing the redo logs to multiple destinations?
    - Should I archive to multiple destinations? If so, would archiving to a network drive lag the archive process, and kill the bandwidth to the server/database since it would be writing 200mb+ files to the network every few minutes?
    - What are some recommended file size minimums / maximums under the current environment listed above?
    - Other tips/suggestions?
    Any help would be appreciated.
    Thanks.

    hi,
    havce u configured LOG_ARCHIVE_START = TRUE ???
    How fast should logs be being written?Should I up the number of redo logfiles, or up the size of each?
    - Should I be writing the redo logs to multiple destinations?
    - Should I archive to multiple destinations? If so, would archiving to a network drive lag the archive process, and kill the bandwidth to the server/database since it would be writing 200mb+ files to the network every few minutes?
    - What are some recommended file size minimums / maximums under the current environment listed above?
    IF U WANT TO KEEP TIME BETWEEN FAILURES TO MINIMUM , THEN KEEP UR REDO LOG FILE SIZES TO SMALLER,,BUT ,,AS GENERALLY,,U SHUD TAKE IT TO A GOOD BIG ONE LIKE IN UR SITUATION I THINK IT SHUD BE AS:
    LOG_BUFFER = 104857600 --IN INIT.ORA (100MB)
    5 REDO LOG FILES AT MULTIPLE LOCATIONS EACH OF THE SIZE 400 MB...
    IT IS RECOMMENDED THAT DON'T TAKE UR ARCHIVES ON A NETWORKED LOCATION AS IT WILL DEFINITLY OVERLOADS NETWORK TRAFIC AS WELL AS SLOWS DOWN ARCHIVAL SPEED.
    REGARDS
    MUHAMMAD UMAR LIAQUAT

  • Capture process issue...archive log missing!!!!!

    Hi,
    Oracle Streams capture process is alternating between INITIALIZING and DICTIONARY INITIALIZATION state and not proceeding after this state to capture updates made on table.
    we have accidentally missing archivelogs and no backup archive logs.
    Now I am going to recreate the capture process again.
    How I can start the the capture process from new SCN ?
    And Waht is the batter way to remove the archive log files from central server, because
    SCN used by capture processes?
    Thanks,
    Faziarain
    Edited by: [email protected] on Aug 12, 2009 12:27 AM

    Using dbms_Streams_Adm to add a capture, perform also a dbms_capture_adm.build. You will see in v$archived_log at the column dictionary_begin a 'yes', which means that the first_change# of this archivelog is first suitable SCN for starting capture.
    'rman' is the prefered way in 10g+ to remove the archives as it is aware of streams constraints. If you can't use rman to purge the archives, then you need to check the min required SCN in your system by script and act accordingly.
    Since 10g, I recommend to use rman, but nevertheless, here is the script I made in 9i in the old time were rman was eating the archives needed by Streams with appetite.
    #!/usr/bin/ksh
    # program : watch_arc.sh
    # purpose : check your archive directory and if actual percentage is > MAX_PERC
    #           then undertake the action coded by -a param
    # Author : Bernard Polarski
    # Date   :  01-08-2000
    #           12-09-2005      : added option -s MAX_SIZE
    #           20-11-2005      : added option -f to check if an archive is applied on data guard site before deleting it
    #           20-12-2005      : added option -z to check if an archive is still needed by logminer in a streams operation
    # set -xv
    #--------------------------- default values if not defined --------------
    # put here default values if you don't want to code then at run time
    MAX_PERC=85
    ARC_DIR=
    ACTION=
    LOG=/tmp/watch_arch.log
    EXT_ARC=
    PART=2
    #------------------------- Function section -----------------------------
    get_perc_occup()
      cd $ARC_DIR
      if [ $MAX_SIZE -gt 0 ];then
           # size is given in mb, we calculate all in K
           TOTAL_DISK=`expr $MAX_SIZE \* 1024`
           USED=`du -ks . | tail -1| awk '{print $1}'`    # in Kb!
      else
        USED=`df -k . | tail -1| awk '{print $3}'`    # in Kb!
        if [ `uname -a | awk '{print $1}'` = HP-UX ] ;then
               TOTAL_DISK=`df -b . | cut -f2 -d: | awk '{print $1}'`
        elif [ `uname -s` = AIX ] ;then
               TOTAL_DISK=`df -k . | tail -1| awk '{print $2}'`
        elif [ `uname -s` = ReliantUNIX-N ] ;then
               TOTAL_DISK=`df -k . | tail -1| awk '{print $2}'`
        else
                 # works on Sun
                 TOTAL_DISK=`df -b . | sed  '/avail/d' | awk '{print $2}'`
        fi
      fi
      USED100=`expr $USED \* 100`
      USG_PERC=`expr $USED100 / $TOTAL_DISK`
      echo $USG_PERC
    #------------------------ Main process ------------------------------------------
    usage()
        cat <<EOF
                  Usage : watch_arc.sh -h
                          watch_arc.sh  -p <MAX_PERC> -e <EXTENTION> -l -d -m <TARGET_DIR> -r <PART>
                                        -t <ARCHIVE_DIR> -c <gzip|compress> -v <LOGFILE>
                                        -s <MAX_SIZE (meg)> -i <SID> -g -f
                  Note :
                           -c compress file after move using either compress or gzip (if available)
                              if -c is given without -m then file will be compressed in ARCHIVE DIR
                           -d Delete selected files
                           -e Extention of files to be processed
                           -f Check if log has been applied, required -i <sid> and -g if v8
                           -g Version 8 (use svrmgrl instead of sqlplus /
                           -i Oracle SID
                           -l List file that will be processing using -d or -m
                           -h help
                           -m move file to TARGET_DIR
                           -p Max percentage above wich action is triggered.
                              Actions are of type -l, -d  or -m
                           -t ARCHIVE_DIR
                           -s Perform action if size of target dir is bigger than MAX_SIZE (meg)
                           -v report action performed in LOGFILE
                           -r Part of files that will be affected by action :
                               2=half, 3=a third, 4=a quater .... [ default=2 ]
                           -z Check if log is still needed by logminer (used in streams),
                                    it requires -i <sid> and also -g for Oracle 8i
                  This program list, delete or move half of all file whose extention is given [ or default 'arc']
                  It check the size of the archive directory and if the percentage occupancy is above the given limit
                  then it performs the action on the half older files.
            How to use this prg :
                    run this file from the crontab, say, each hour.
         example
         1) Delete archive that is sharing common arch disk, when you are at 85% of 2500 mega perform delete half of the files
         whose extention is 'arc' using default affected file (default is -r 2)
         0,30 * * * * /usr/local/bin/watch_arc.sh -e arc -t /arc/POLDEV -s 2500 -p 85 -d -v /var/tmp/watch_arc.POLDEV.log
         2) Delete archive that is sharing common disk with oother DB in /archive, act when 90% of 140G, affect by deleting
         a quater of all files (-r 4) whose extention is 'dbf' but connect before as sysdba in POLDEV db (-i) if they are
         applied (-f is a dataguard option)
         watch_arc.sh -e dbf -t /archive/standby/CITSPRD -s 140000 -p 90 -d -f -i POLDEV -r 4 -v /tmp/watch_arc.POLDEV.log
         3) Delete archive of DB POLDEV when it reaches 75% affect 1/3 third of files, but connect in DB to check if
         logminer do not need this archive (-z). this is usefull in 9iR2 when using Rman as rman do not support delete input
         in connection to Logminer.
         watch_arc.sh -e arc -t /archive/standby/CITSPRD  -p 75 -d -z -i POLDEV -r 3 -v /tmp/watch_arc.POLDEV.log
    EOF
    #------------------------- Function section -----------------------------
    if [ "x-$1" = "x-" ];then
          usage
          exit
    fi
    MAX_SIZE=-1  # disable this feature if it is not specificaly selected
    while getopts  c:e:p:m:r:s:i:t:v:dhlfgz ARG
      do
        case $ARG in
           e ) EXT_ARC=$OPTARG ;;
           f ) CHECK_APPLIED=YES ;;
           g ) VERSION8=TRUE;;
           i ) ORACLE_SID=$OPTARG;;
           h ) usage
               exit ;;
           c ) COMPRESS_PRG=$OPTARG ;;
           p ) MAX_PERC=$OPTARG ;;
           d ) ACTION=delete ;;
           l ) ACTION=list ;;
           m ) ACTION=move
               TARGET_DIR=$OPTARG
               if [ ! -d $TARGET_DIR ] ;then
                   echo "Dir $TARGET_DIR does not exits"
                   exit
               fi;;
           r)  PART=$OPTARG ;;
           s)  MAX_SIZE=$OPTARG ;;
           t)  ARC_DIR=$OPTARG ;;
           v)  VERBOSE=TRUE
               LOG=$OPTARG
               if [ ! -f $LOG ];then
                   > $LOG
               fi ;;
           z)  LOGMINER=TRUE;;
        esac
    done
    if [ "x-$ARC_DIR" = "x-" ];then
         echo "NO ARC_DIR : aborting"
         exit
    fi
    if [ "x-$EXT_ARC" = "x-" ];then
         echo "NO EXT_ARC : aborting"
         exit
    fi
    if [ "x-$ACTION" = "x-" ];then
         echo "NO ACTION : aborting"
         exit
    fi
    if [ ! "x-$COMPRESS_PRG" = "x-" ];then
       if [ ! "x-$ACTION" =  "x-move" ];then
             ACTION=compress
       fi
    fi
    if [ "$CHECK_APPLIED" = "YES" ];then
       if [ -n "$ORACLE_SID" ];then
             export PATH=$PATH:/usr/local/bin
             export ORAENV_ASK=NO
             export ORACLE_SID=$ORACLE_SID
             . /usr/local/bin/oraenv
       fi
       if [ "$VERSION8" = "TRUE" ];then
          ret=`svrmgrl <<EOF
    connect internal
    select max(sequence#) from v\\$log_history ;
    EOF`
    LAST_APPLIED=`echo $ret | sed 's/.*------ \([^ ][^ ]* \).*/\1/' | awk '{print $1}'`
       else
        ret=`sqlplus -s '/ as sysdba' <<EOF
    set pagesize 0 head off pause off
    select max(SEQUENCE#) FROM V\\$ARCHIVED_LOG where applied = 'YES';
    EOF`
       LAST_APPLIED=`echo $ret | awk '{print $1}'`
       fi
    elif [ "$LOGMINER" = "TRUE" ];then
       if [ -n "$ORACLE_SID" ];then
             export PATH=$PATH:/usr/local/bin
             export ORAENV_ASK=NO
             export ORACLE_SID=$ORACLE_SID
             . /usr/local/bin/oraenv
       fi
        var=`sqlplus -s '/ as sysdba' <<EOF
    set pagesize 0 head off pause off serveroutput on
    DECLARE
    hScn number := 0;
    lScn number := 0;
    sScn number;
    ascn number;
    alog varchar2(1000);
    begin
      select min(start_scn), min(applied_scn) into sScn, ascn from dba_capture ;
      DBMS_OUTPUT.ENABLE(2000);
      for cr in (select distinct(a.ckpt_scn)
                 from system.logmnr_restart_ckpt\\$ a
                 where a.ckpt_scn <= ascn and a.valid = 1
                   and exists (select * from system.logmnr_log\\$ l
                       where a.ckpt_scn between l.first_change# and l.next_change#)
                  order by a.ckpt_scn desc)
      loop
        if (hScn = 0) then
           hScn := cr.ckpt_scn;
        else
           lScn := cr.ckpt_scn;
           exit;
        end if;
      end loop;
      if lScn = 0 then
        lScn := sScn;
      end if;
       select min(sequence#) into alog from v\\$archived_log where lScn between first_change# and next_change#;
      dbms_output.put_line(alog);
    end;
    EOF`
      # if there are no mandatory keep archive, instead of a number we just get the "PLS/SQL successfull"
      ret=`echo $var | awk '{print $1}'`
      if [ ! "$ret" = "PL/SQL" ];then
         LAST_APPLIED=$ret
      else
         unset LOGMINER
      fi
    fi
    PERC_NOW=`get_perc_occup`
    if [ $PERC_NOW -gt $MAX_PERC ];then
         cd $ARC_DIR
         cpt=`ls -tr *.$EXT_ARC | wc -w`
         if [ ! "x-$cpt" = "x-" ];then
              MID=`expr $cpt / $PART`
              cpt=0
              ls -tr *.$EXT_ARC |while read ARC
                  do
                     cpt=`expr $cpt + 1`
                     if [ $cpt -gt $MID ];then
                          break
                     fi
                     if [ "$CHECK_APPLIED" = "YES" -o "$LOGMINER" = "TRUE" ];then
                        VAR=`echo $ARC | sed 's/.*_\([0-9][0-9]*\)\..*/\1/' | sed 's/[^0-9][^0-9].*//'`
                        if [ $VAR -gt $LAST_APPLIED ];then
                             continue
                        fi
                     fi
                     case $ACTION in
                          'compress' ) $COMPRESS_PRG $ARC_DIR/$ARC
                                     if [ "x-$VERBOSE" = "x-TRUE" ];then
                                           echo " `date +%d-%m-%Y' '%H:%M` : $ARC compressed using $COMPRESS_PRG" >> $LOG
                                     fi ;;
                          'delete' ) rm $ARC_DIR/$ARC
                                     if [ "x-$VERBOSE" = "x-TRUE" ];then
                                           echo " `date +%d-%m-%Y' '%H:%M` : $ARC deleted" >> $LOG
                                     fi ;;
                          'list'   )   ls -l $ARC_DIR/$ARC ;;
                          'move'   ) mv  $ARC_DIR/$ARC $TARGET_DIR
                                     if [ ! "x-$COMPRESS_PRG" = "x-" ];then
                                           $COMPRESS_PRG $TARGET_DIR/$ARC
                                           if [ "x-$VERBOSE" = "x-TRUE" ];then
                                                 echo " `date +%d-%m-%Y' '%H:%M` : $ARC moved to $TARGET_DIR and compressed" >> $LOG
                                           fi
                                     else
                                           if [ "x-$VERBOSE" = "x-TRUE" ];then
                                                 echo " `date +%d-%m-%Y' '%H:%M` : $ARC moved to $TARGET_DIR" >> $LOG
                                           fi
                                     fi ;;
                      esac
              done
          else
              echo "Warning : The filesystem is not full due to archive logs !"
              exit
          fi
    elif [ "x-$VERBOSE" = "x-TRUE" ];then
         echo "Nothing to do at `date +%d-%m-%Y' '%H:%M`" >> $LOG
    fi

  • Where all the redo/archive log volume come from?

    Hi,
    I have a database with a size of around 50G. Thats not very much, but the crazy thing is that this database has a redo log volume per day that is nearly equal the size of the database:
    -- Daily View
    SQL> SELECT TRUNC(completion_time) AS time, ROUND(SUM(blocks * block_size)/1024/1024,2) AS size_mb, ROUND(SUM(blocks * block_size)/1024/1024/1024,2) AS size_gb FROM v$archived_log GROUP BY TRUNC(completion_time) ORDER BY 1 DESC;
    TIME          SIZE_MB    SIZE_GB
    2013-02-03    49599.7      48.44
    2013-02-02   50104.63      48.93
    2013-02-01   54466.36      53.19
    2013-01-31   52935.41      51.69
    2013-01-30   51596.85      50.39
    -- Hourly View
    SQL> SELECT TRUNC(completion_time,'HH24') AS time, ROUND(SUM(blocks * block_size)/1024/1024,2) AS size_mb, ROUND(SUM(blocks * block_size)/1024/1024/1024,2) AS size_gb FROM v$archived_log GROUP BY TRUNC(completion_time,'HH24') ORDER BY 1 DESC;
    TIME          SIZE_MB    SIZE_GB
    2013-02-03 23     160.68        .16
    2013-02-03 22     163.73        .16
    2013-02-03 21     195.65        .19
    2013-02-03 20    4492.44       4.39
    2013-02-03 19      176.3        .17
    2013-02-03 18     4259.8       4.16
    2013-02-03 17     226.99        .22
    2013-02-03 16    5465.64       5.34
    2013-02-03 15     166.47        .16
    2013-02-03 14     165.05        .16
    2013-02-03 13     253.33        .25
    2013-02-03 12    9568.93       9.34
    2013-02-03 11     391.14        .38
    2013-02-03 10    9585.36       9.36
    2013-02-03 09     160.02        .16
    2013-02-03 08      200.1         .2
    2013-02-03 07     166.66        .16
    2013-02-03 06     267.45        .26
    2013-02-03 05     309.26         .3
    2013-02-03 04    1486.87       1.45
    2013-02-03 03   11106.77      10.85
    2013-02-03 02      318.1        .31
    2013-02-03 01     147.47        .14
    2013-02-03 00     165.47        .16
    2013-02-02 23     160.17        .16
    2013-02-02 22     159.25        .16
    2013-02-02 21      205.9         .2
    2013-02-02 20    4473.27       4.37
    2013-02-02 19     124.64        .12
    2013-02-02 18    4364.69       4.26
    2013-02-02 17     295.02        .29
    2013-02-02 16    5415.06       5.29
    2013-02-02 15     166.22        .16
    2013-02-02 14     166.83        .16
    2013-02-02 13      84.62        .08
    2013-02-02 12    9905.55       9.67
    2013-02-02 11     418.31        .41
    2013-02-02 10    9548.78       9.32
    2013-02-02 09     166.51        .16
    2013-02-02 08     204.88         .2
    2013-02-02 07     167.37        .16I know that every database change produces redo, but why that much?
    Is there a way to investigate further where all the redo information comes from?
    Every 2 hours redo is backed up to tape.
    There are no significant batches, shaking and shuffling the data around all the time.
    Nearly all changes in this database is happening through user inputs.
    Database is 11gR2 on Redhat 5.6.
    Thanks
    941743
    Edited by: 941743 on 04.02.2013 15:32
    Edited by: 941743 on 04.02.2013 15:33

    I am afraid there is no easy and direct way to pull the answer from the data dictionary.
    But with some work, you can get to the bottom of this.
    This query shows you how much redo is used by the sessions in your system currently:
    select a.sid , a.value  from v$sesstat a,  v$statname b
    where a.statistic# = b.statistic#
    and b.name = 'redo size'Unfortunately, I am not aware of a AWR view (license required!) that corresponds to v$sesstat, so it would not be easy to look back and see which session generated the redo.
    One way is to troubleshoot the problem online, using a utility such as snapper- http://blog.tanelpoder.com/2010/03/22/oracle-session-snapper-v3-10/ . See which sessions generate most redo and see what SQL they are running at that time.
    The other way is to create your own “repository”. Sample V$SESSION, v$sesstat , v$statname and possibly V$SQL frequently (every few seconds) and record how much redo and what SQLs are running by each session. Once you gather enough data, look which sessions had the biggest “redo size” delta and what SQL were they running at that time.
    Iordan Iotzov
    http://iiotzov.wordpress.com/

  • Status of db backup taken after 2 logs archived went missing

    Hi ,
    what would be the effect or issues of the full db backup & archivelog backup of 9i db taken after 2 archive logs missing that were never backed up, since backup, or crosscheck did't alerted any error messages. will this be still a valid backup to restore or recovery in case.
    posting the backup script details;
    note:we are not using catalog repository
    run {
    allocate channel dev1 type disk format 'Z:\Rbackup\DMP\db_t%t_s%s_p%p';
    allocate channel dev2 type disk format 'Z:\Rbackup\DMP\db_t%t_s%s_p%p';
    backup database;
    backup archivelog all;
    delete noprompt archivelog until time 'sysdate-1' ;
    crosscheck archivelog all;
    release channel dev1 ;
    release channel dev2 ;
    }

    logs missing date is Jan 14th and no backups were taken on this day. In that case, the "BACKUP ARCHIVELOG ALL" on the 15th would have generated an error flagging the missing archivelogs because the "ALL" specification is a direction to backup all known ArchiveLogs that are available for backup. The only reasons why it wouldn't have flagged the missing ArchiveLogs would be :
    a. You have another job that deletes archivelogs and this one ran before the backup on 15th Jan
    b. The ArchiveLogs are in the FRA and Oracle had automatically purged ArchiveLogs when the FRA was running low on free space.
    The Backup on 15th is good for restore and recovery. Use the "VALIDATE" command in RMAN to validate the database and archivelogs.
    See http://hemantoracledba.blogspot.com/2010/03/misinterpreting-restore-database.html
    However, as two archivelogs are missing and not backed up, you will not be able to do a Point In Time Recovery to any point in time from the time of the first missing archivelog to the end of the backup of the 15th.
    Hemant K Chitale

  • OVM 3.0 Database Creating Lots of Archive Logs

    Greetings - ever since we initially installed OVM 3.0 earlier this fall (~October), the OVM database has generated archive logs at a very rapid rate. It continually threatens to fill up our 16 GB filesystem dedicated to archive logs, even after daily backup and purging.
    Our OVM database itself is about 4-6 GB large, and we would need to increase the archive log filesystem to about 20-25 GB in size, which we see as unreasonable for such a small database.
    What is causing OVM to generate so many redo logs? Our best guess is that OVM is continuously gathering guest VM CPU usage on each physical server.
    Is there a way to configure the OVM application in order to reduce the amount of redo/archive logs being created?
    We are currently running 3.0.3, having upgraded each time a 3.0.* patch was released. OVMM running on OEL 6.1, database running on latest HP-UX.

    majedian21 wrote:
    Greetings - ever since we initially installed OVM 3.0 earlier this fall (~October), the OVM database has generated archive logs at a very rapid rate. It continually threatens to fill up our 16 GB filesystem dedicated to archive logs, even after daily backup and purging.I would log an SR with Oracle Support for this, so that Development can look at it. Sounds like your environment has lots of VMs running and yes, collecting usage stats for all of those environments. However, there may be some old data from the previous versions that's causing more stats to be collected than necessary.

  • Archive Log Gap between Disaster recovery server & Production Server

    Hi
        Can anybody provide me the script  to find out the archive log missing on Production Server means that archive log backed up & deleted from the production server & rest of the Archive logs has been shipped on to the DR server. Means it will shot the gap between production server & DR server until that log which has been deleted from the production server , but next logs has been shipped to  the DR server. But rest of the logs only be applied when delete log be restored on the production server & shipped on the DR server.
    thanks.
    Regards
    Ravi Kant Arya

    Ravi,
    The question is how are you getting the archive logs shipped over to your standby database?  If you are doing it via FTP or scripts, then you may want to look at configuring DataGuard to do it for you.  Look at "Setting Up Oracle Dataguard for SAP" at:
    http://www.oracle.com/us/solutions/sap/wp-ora4sap-dataguard11g-303811.pdf
    Good Luck.
    Mike Kennedy

  • RMAN-6089: archive log not found or out of sync with catalog

    Hi:
    I am using OEM, not RMAN, to do a DB backup and got the above error message. I think the problem is caused by some archive logs missing from my NT machine.
    I tried to manually copy from an existing archive log and rename it to the missing archive log but it didn't work.
    I then tried to backup the archive logs only, not whole DB, and specified "delete input" option, and the process completed successfully.
    However, when I tried to re-do the whole DB backup, it failed with the same error.
    I looked at v$archived_log and I can see all archive logs, including the ones from previous incarnation and the missing ones from the current incarnation. How can I delete them or change their status (from OEM not from RMAN) from not deleted (NO) to deleted (YES) in order to perform a DB backup?

    Hi,
    I'm using controlfile for rman. I've issued "change archivelog all validate" before a full backup Before the full backup, I had a incremental backup process crashed(don't know why), which left some entres in v$archived_log. I have no problem completing the rman backup, but "restore archivelog all validate" command gives me "falure of restore..." and all those seq can be found in v$archived_log with "yes" for deleted column. Does that mean controlfile is still not in sync with the system? I don't need those target seq because those were before the full backup. Will there be potential problem later on during recovery? How do I (or when Oracle server will) get rid of those entries in v$archived_log? Thanks.
    RMAN> restore archivelog all validate;
    Starting restore at 11-AUG-05
    using target database controlfile instead of recovery catalog
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: sid=28 devtype=DISK
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of restore command at 08/11/2005 10:20:24
    RMAN-06026: some targets not found - aborting restore
    RMAN-06025: no backup of log thread 1 seq 1048 scn 122640071 found to restore
    RMAN-06025: no backup of log thread 1 seq 1047 scn 122572176 found to restore
    RMAN-06025: no backup of log thread 1 seq 1046 scn 122431604 found to restore
    SQL> select name, completion_time,deleted from v$archived_log;
    NAME COMPLETIO DEL
    /u04/arch/arch_1_1046.arc 10-AUG-05 YES
    /u04/arch/arch_1_1047.arc 10-AUG-05 YES
    /u04/arch/arch_1_1048.arc 11-AUG-05 YES
    /u04/arch/arch_1_1049.arc 11-AUG-05 YES
    /u04/arch/arch_1_1050.arc 11-AUG-05 YES

  • Standby database is not applying redo logs due to missing archive log

    We use 9.2.0.7 Oracle Database. My goal is to create a physical standby database.
    I have followed all the steps necessary to fulfill this in Oracle Data Guard Concepts and Administration manual. Archived redo logs are transmitted from primary to standby database regularly. But the logs are not applied due to archive log gap.
    SQL> select process, status from v$managed_standby;
    PROCESS STATUS
    ARCH CONNECTED
    ARCH CONNECTED
    MRP0 WAIT_FOR_GAP
    RFS RECEIVING
    RFS ATTACHED
    SQL> select * from v$archive_gap;
    THREAD# LOW_SEQUENCE# HIGH_SEQUENCE#
    1 503 677
    I have tried to find the missing archives on the primary database, but was unable to. They have been deleted (somehow) regularly by the existing backup policy on the primary database. I have looked up the backups, but these archive logs are too old to be in the backup. Backup retention policy is 1 redundant backup of each file. I didn't save older backups as I didn't really need them from up to this point.
    I have cross checked (using rman crosscheck) the archive log copies on the primary database and deleted the "obsolete" copies of archive logs. But, v$archived_log view on the primary database only marked those entries as "deleted". Unfortunately, the standby database is still waiting for those logs to "close the gap" and doesn't apply the redo logs at all. I am reluctant to recreate the control file on the primary database as I'm afraid this occurred through the regular database backup operations, due to current backup retention policy and it probably might happen again.
    The standby creation procedure was done by using the data files from 3 days ago. The archive logs which are "producing the gap" are older than a month, and are probably unneeded for standby recovery.
    What shall I do?
    Kind regards and thanks in advance,
    Milivoj

    On a physical standby database
    To determine if there is an archive gap on your physical standby database, query the V$ARCHIVE_GAP view as shown in the following example:
    SQL> SELECT * FROM V$ARCHIVE_GAP;
    THREAD# LOW_SEQUENCE# HIGH_SEQUENCE#
    1 7 10
    The output from the previous example indicates your physical standby database is currently missing log files from sequence 7 to sequence 10 for thread 1.
    After you identify the gap, issue the following SQL statement on the primary database to locate the archived redo log files on your primary
    database (assuming the local archive destination on the primary database is LOG_ARCHIVE_DEST_1):
    SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE THREAD#=1 AND DEST_ID=1 AND 2> SEQUENCE# BETWEEN 7 AND 10;
    NAME
    /primary/thread1_dest/arcr_1_7.arc /primary/thread1_dest/arcr_1_8.arc /primary/thread1_dest/arcr_1_9.arc
    Copy these log files to your physical standby database and register them using the ALTER DATABASE REGISTER LOGFILE statement on your physical standby database. For example:
    SQL> ALTER DATABASE REGISTER LOGFILE
    '/physical_standby1/thread1_dest/arcr_1_7.arc';
    SQL> ALTER DATABASE REGISTER LOGFILE
    '/physical_standby1/thread1_dest/arcr_1_8.arc';
    After you register these log files on the physical standby database, you can restart Redo Apply.
    Note:
    The V$ARCHIVE_GAP fixed view on a physical standby database only returns the next gap that is currently blocking Redo Apply from continuing. After resolving the gap and starting Redo Apply, query the V$ARCHIVE_GAP fixed view again on the physical standby database to determine the next gap sequence, if there is one. Repeat this process until there are no more gaps.
    Restoring the archived logs from the backup set
    If the archived logs are not available in the archive destination then at that time we need to restore the required archived logs from the backup step. This task is accomplished in the following way.
    To restore range specified archived logs:
    Run {
    Set archivelog destination to '/oracle/arch/arch_restore'
    Restore archivelog from logseq=<xxxxx> until logseq=<xxxxxxx>
    To restore all the archived logs:
    Run {
    Set archivelog destination to '/oracle/arch/arch_restore';
    Restore archivelog all;
    }

  • Missing record in archive log

    hello all,
    to the point, i am trying to mirroring 2 database using archive log.
    so, i do some test by inserting large data (1200 record / s) into 4 table for some interval (like 10 menit).
    Each time database create archive log, my daemon in Master will copy the archive log to the Slave, and daemon in the Slave will extract them using dbms_logmnr.
    the problem is number of rows in all Slave table is not equal (less than) number of all rows in Master.
    even if i try to alter the system log file manuallly, still there is missing rows in slave.
    i have try some alternative like,
    - increasing db_writer_processes (from 1 to 2 to 4)
    - increasing redo log size (from 50 MB to 100 MB)
    - increasing redo log group (from 3 to 6)
    but still there is a missing record.
    where is those missing record go ?
    master db: 10.2.0.1.0 + ASM
    master os: SunOS z8 5.10 Generic_137138-09 i86pc
    slave db: 10.2.0.1.0
    slave os: GNU/Linux 2.6.18-8.el5 x86_64 (RHEL)

    Thank you for your reply sir.
    The problem with CDC (and/or Streams implementation) is they use a cpu resource within Oracle it self. So, if in peak time Oracle in Master has already reaching 80-90%, with addition using Streams they will make it to > 90%. Don't imagine 1000000 / day transaction here, but imagine with 1000/s transaction. And That's what the-one-who-already-use-stream says.
    i am not reinvent the wheel here, i am seeking for best alternative. in fact i am looking for answer from "where is those missing record go ?"

  • Data guard - missed archive log

    Hi:
    I am on 10.2.0.3, using physical standby. One of my check-up sqls shows missed (not applied) arch log:
    SELECT THREAD#, SEQUENCE#, APPLIED FROM V$ARCHIVED_LOG
    where applied='NO'
    THREAD# SEQUENCE# APP
    1 16595 NO
    It's relatively old one, my max is 18211i and the log application is going fine.
    How can I apply this missed one? Do I have to stop managed recovery and do manual recovery for it?
    TIA.

    GregX,
    Please check if this file actually needs to be applied.
    You can find out the when the archived log file was created – FIRST_TIME/NEXT_TIME columns in V$ARCHIVED_LOG.
    If the archived log file was created before you created the stand-by DB, you do not need ( nor you can) to apply that file.
    Please note that the physical standby would stop applying archivelog if you fail to provide the next required archive log file. Since this has not happened (as per your statement) there is a good chance that you archive redo in question is not needed.
    Hope that helps,
    Edited by: IordanIotzov on Jan 30, 2009 1:34 PM

Maybe you are looking for

  • Can you connect 2 ipods to the same computer?

    my sister and i live together and share a computer (we're in college). i own a ipod mini and my sister just bought a fifth-gen ipod. is it possible for us to use the same computer and itunes and still have completely different music libraries (like i

  • How can I get my photos back from a previous IPhoto?

    I have an Macbook OS X.  I turned on my computer this morning and I went to Iphoto only to discover that all of my photos are gone.  First, I was prompted to choose a new library as 'no iphoto library was found' and wound up with what looks like a br

  • Business partner not created in SRM in  HR-SRM  integration

    Hi All, We are setting up SRM HR integration set up with ALE idocs message type. I ve done configuration as per guide available in SAP.Setting up parnter profiles,maintaining message types in both the systems ,mainyaining entries in tavle T77S0 for H

  • Parameter NEW_ITEM_DATA in function module BAPI_OUTB_DELIVERY_CHANGE

    Hi, we have to add a new item to a delivery using ABAP. The function module BAPI_OUTB_DELIVERY_CHANGE has a parameter NEW_ITEM_DATA, but unfortunately no documentation about it. It Does anybody have an example on how to add a new item with this FM? T

  • Generic function module for delta - which FM ?

    Hi all, I want to create a custom generic datasource in R3 which uses a function module for delta extraction. This is straight forward for full extract (copy FM RSAX_BIW_GET_DATA_SIMPLE - I already did this and have a full extraction working to BW).