MANAGED RECOVERY AT STANDBY DATABASE REQURING OLD ARCHIVELOGS ORA-00308

Oracle 9.2.0.4
HP-UX 11.11i
The database in Archivelog mode, single standby database in managed recovery
mode.
keeping standby in sync with manual applying the ARCHIVELOG from primary to
standby database.
primary database was 3 REDO log members of 100 MB with 1 member each.
what i did, 1 drop and re-create the INACTIVE REDO group for all three, and
make them
5 REDO logs of 200 MB with 1 member each,
then in order to keep fresh copy of primary database onto standby database, i
send the cold backup after 15 days (last week) with standby controlfile.
now, with that standby controlfile and the database, i can mount the database
but while to open the database, receives messages as , it requiring the
ARCHIVELOGS generated log time ago.
changes the REDO groups from 3 to 5 and size 100 to 200 MB at INACTIVE state
### Workarounds Used ###
SQL> alter database mount standby database;
Database altered.
SQL> alter database open read only;
alter database open read only
ERROR at line 1:
ORA-16004: backup database requires recovery
ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1: '/user01/oracle9i/oradata/iobasprd/system01.dbf'
SQL> alter database recover automatic standby database;
alter database recover automatic standby database
ERROR at line 1:
ORA-00279: change 1655989696 generated at 08/12/2005 12:46:25 needed for thread
1
ORA-00289: suggestion :
/user02/oracle9i/oradata/iobasprd/archive/archive_16849.dbf
ORA-00280: change 1655989696 for thread 1 is in sequence #16849
ORA-00278: log file
'/user02/oracle9i/oradata/iobasprd/archive/archive_16849.dbf' no longer needed
for this recovery
ORA-00308: cannot open archived log
'/user02/oracle9i/oradata/iobasprd/archive/archive_16849.dbf'
ORA-27037: unable to obtain file status
HP-UX Error: 2: No such file or directory
Additional information: 3
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /user02/oracle9i/oradata/iobasprd/archive
Oldest online log sequence 53052
Next log sequence to archive 53056
Current log sequence
53056
-----------------------AlertIOBASPRD.log----------------------------
alter database mount standby database
Mon Oct 24 12:05:05 2005
Successful mount of redo thread 1, with mount id 3283884781.
Mon Oct 24 12:05:05 2005
Standby Database mounted.
Completed: alter database mount standby database
Mon Oct 24 12:05:12 2005
alter database open read only
ORA-16004 signalled during: alter database open read only...
Mon Oct 24 12:05:23 2005
alter database recover automatic standby database
Mon Oct 24 12:05:23 2005
Media Recovery Start
Starting datafile 1 recovery in thread 1 sequence 52617
Datafile 1: '/user01/oracle9i/oradata/iobasprd/system01.dbf'
Starting datafile 2 recovery in thread 1 sequence 52617
Datafile 2: '/user01/oracle9i/oradata/iobasprd/TBMS_TS_005.dbf'
Starting datafile 3 recovery in thread 1 sequence 52617
Datafile 3: '/user01/oracle9i/oradata/iobasprd/drsys01.dbf'
Starting datafile 4 recovery in thread 1 sequence 52617
Datafile 132: '/user01/oracle9i/oradata/iobasprd/TBMS_TS_002.dbf'
Starting datafile 133 recovery in thread 1 sequence 52617
Datafile 133: '/user01/oracle9i/oradata/iobasprd/TBMS_TS_003.dbf'
Starting datafile 134 recovery in thread 1 sequence 52617
Datafile 134: '/user01/oracle9i/oradata/iobasprd/TBMS_TS_004.dbf'
Media Recovery Log
Media Recovery Log /user02/oracle9i/oradata/iobasprd/archive/archive_16849.dbf
Errors with log /user02/oracle9i/oradata/iobasprd/archive/archive_16849.dbf.
ORA-279 signalled during: alter database recover automatic standby database...
Mon Oct 24 12:06:01 2005
Restarting dead background process QMN0
QMN0 started with pid=9
The snap of alertIOBASPRD.log can understand me that it requiring the
ARCHIVELOG 52617 only
and its lying in LOG_ARCHIVE_DET location also as
$ pwd
/user02/oracle9i/oradata/iobasprd/archive
$ ls archive_5261*.dbf
archive_52610.dbf archive_52613.dbf archive_52616.dbf archive_52619.dbf
archive_52611.dbf archive_52614.dbf archive_52617.dbf
archive_52612.dbf archive_52615.dbf archive_52618.dbf
$
now, even the files are lying , why ORACLE requing the old archive logs ?????

You haven't given any usefuly information on your problem.
show parameter log_archive_dest
show parameter fal
show parameter dg
What errors are in your alert logs ?
What command are you using to recover ?
Check the contents of v$archived_log
# run on primary to detect failures :-
select destination, status, fail_date, valid_now
from v$archive_dest
where status != 'VALID' or VALID_NOW != 'YES';
# run on standby to get exact position of rollforward :-
select thread#, to_char(snapshot_time,'dd-mon-yyyy:hh24:mi'),
to_char(applied_time,'dd-mon-yyyy:hh24:mi'),
to_char(newest_time,'dd-mon-yyyy:hh24:mi') from V$STANDBY_APPLY_SNAPSHOT;
Are you using dataguard broker ?

Similar Messages

  • ORA-279 signalled during recovery of standby database

    Hi All,
    I am preparing standby database after taking hot backup and copying those datafiles to standby,
    taken controlfile standby controlfile backup from primary
    mounted the standby database using standby controlfile using
    startup nomount pfile='/u01/stand.ora'
    alter database mount standby database;
    Now I have started applying archives on standby database after copying all archives from primary to standby box the archives generated during backup using..
    recover standby database;
    But I am getting the below warning on the recovery screen...
    ORA-00279: change 51667629050 generated at 07/02/2009 00:59:43 needed for
    thread 1
    ORA-00289: suggestion : /nodal-archive/archive/1_55118_652209172.arc
    ORA-00280: change 51667629050 for thread 1 is in sequence #55118
    ORA-00278: log file '/nodal-archive/archive/1_55117_652209172.arc' no longer
    needed for this recovery
    ORA-00279: change 51667703096 generated at 07/02/2009 01:06:04 needed for
    thread 1
    ORA-00289: suggestion : /nodal-archive/archive/1_55119_652209172.arc
    ORA-00280: change 51667703096 for thread 1 is in sequence #55119
    ORA-00278: log file '/nodal-archive/archive/1_55118_652209172.arc' no longer
    needed for this recovery
    ORA-00279: change 51667767649 generated at 07/02/2009 01:12:28 needed for
    thread 1
    ORA-00289: suggestion : /nodal-archive/archive/1_55120_652209172.arc
    ORA-00280: change 51667767649 for thread 1 is in sequence #55120
    ORA-00278: log file '/nodal-archive/archive/1_55119_652209172.arc' no longer
    needed for this recovery
    ORA-00279: change 51667831821 generated at 07/02/2009 01:19:40 needed for
    thread 1
    ORA-00289: suggestion : /nodal-archive/archive/1_55121_652209172.arc
    ORA-00280: change 51667831821 for thread 1 is in sequence #55121
    ORA-00278: log file '/nodal-archive/archive/1_55120_652209172.arc' no longer
    needed for this recovery
    and I am getting the below warning on the alert log..........
    Sun Jul 5 18:37:36 2009
    ALTER DATABASE RECOVER CONTINUE DEFAULT
    Sun Jul 5 18:37:36 2009
    Media Recovery Log /nodal-archive/archive/1_55256_652209172.arc
    Sun Jul 5 18:40:31 2009
    ORA-279 signalled during: ALTER DATABASE RECOVER CONTINUE DEFAULT ...
    Sun Jul 5 18:40:31 2009
    ALTER DATABASE RECOVER CONTINUE DEFAULT
    Sun Jul 5 18:40:31 2009
    Media Recovery Log /nodal-archive/archive/1_55257_652209172.arc
    Please suggest what to do now.............
    Thanks in Advance,
    Sukanta Paul.

    Hi Sukanta,
    I didn't really understand what the problem is...
    Let me explain, hope it will be clear.
    You created a standby control file, and backed up the database (it doesn't matter in which order). Now, you have a standby database that is ready to apply logs. It will be able to apply log forever, until we will stop it.
    The messages you see say the following:
    ORA-00279: change 51667831821 generated at 07/02/2009 01:19:40 needed for thread 1 {color:blue} - this says that the recovery process is now at scn 51667831821 {color}
    ORA-00289: suggestion : /nodal-archive/archive/1_55121_652209172.arc {color:blue} - the information needed for the recover is in this file (this is only the default name, you can choose other name if the file is called differently) {color}
    ORA-00280: change 51667831821 for thread 1 is in sequence #55121 {color:blue} - same here, the needed archive is sequence 55121 {color}
    ORA-00278: log file '/nodal-archive/archive/1_55120_652209172.arc' no longer needed for this recovery {color:blue} - this message is after Oracle has applied the log, and it means that this log is no longer needed {color}
    Now it will wait for the next log. Again, this process is endless, this is how it is made to allow the standby database to be always synched with the primary.
    Liron Amitzi
    Senior DBA consultant
    [www.dbsnaps.com]
    [www.orbiumsoftware.com]

  • Resize standby database's datafile, get ORA-00600:

    Hello,
    10GR2 database
    In phsical standby database, when try
    alter database datafile 'xxx' resize xxx;
    got error:
    ERROR at line 1:
    ORA-00600: internal error code, arguments: [kcvrsz_01], [45], [200], [], [], [], [], []
    the database is in READ ONLY mode.
    select log_mode, open_mode, protection_mode, database_role from v$database;
    LOG_MODE OPEN_MODE PROTECTION_MODE DATABASE_ROLE
    ARCHIVELOG READ ONLY MAXIMUM PERFORMANCE PHYSICAL STANDBY
    is there any proper way I can resize datafile sucessfully?
    thank you

    Hello user9320579 :
    yes, now database in mount status.
    when I do
    alter database datafile 'xxx' resize xxxM;
    get error"ORA-01109, DATABASE NOT OPEN "
    ...So seems like I need to
    alter database open; (read write mode)
    (then do resize datafile.)
    quesiton is...
    (but) how can I put database back to read only mode WITHOUT BOUCING DATABASE?
    thank you

  • Standby database not applying archivelogs, manually apply after registering

    Hi
    I have a small problem with physical standby db.
    Standby db was created and it was working fine, was applying logs with no problem. One day I had to switch it to read only mode, it stayed in this mode for quiet a while. Then there was a problem with space for archive logs. I fixed this, copied missing logs, registered them and these were applied.
    And then database stopped on the sequence which was automatically registered by primary database.
    v$managed_standby:
    PROCESS STATUS CLIENT_P SEQUENCE# DELAY_MINS BLOCK#
    ARCH CLOSING ARCH 19667 0 126977
    ARCH CLOSING ARCH 19668 0 133121
    MRP0 WAIT_FOR_LOG N/A 19600 0 0
    As you can see there is WAIT_FOR_LOG sequence 19600 which should be applied, which is in the directory, to which oracle user has rights to read etc, etc.
    Only way to force database to apply this log is to manually register it, but I have to add "or replace", because file is already registered.
    /path/dbsid1_19600_668777138.log 2 19600 YES NO NO A 28-OCT-09 28-OCT-09
    alter database register or replace physical logfile '/path/dbsid1_19600_668777138.log';
    After this I have:
    /path/dbsid_19600_668777138.log 2 19600 YES NO NO A 28-OCT-09 28-OCT-09
    /path/dbsid_19600_668777138.log 0 19600 YES YES NO A 29-OCT-09 28-OCT-09
    Registering this file causes applying at once.
    In pfile on primary:
    log_archive_dest_2 string SERVICE=DRSTDB2 ARCH DELAY=2880
    Pay attention - destination 2.
    Question is obvious - why logs are not applied automatically?
    Why logs ARE applying manually but the DEST_ID is set to 0?
    There was no major structure change in primary, besides - logs are applied after all. Bouncing the database doesn't give me any good, switching to readonly and back to recovery mode neither.
    Please can you help? I can build this standby again but this is not a solution.
    Any additional info on request.
    Regards
    Jarek Jozwik
    Edited by: user11281267 on 30-Oct-2009 06:15

    You haven't given any usefuly information on your problem.
    show parameter log_archive_dest
    show parameter fal
    show parameter dg
    What errors are in your alert logs ?
    What command are you using to recover ?
    Check the contents of v$archived_log
    # run on primary to detect failures :-
    select destination, status, fail_date, valid_now
    from v$archive_dest
    where status != 'VALID' or VALID_NOW != 'YES';
    # run on standby to get exact position of rollforward :-
    select thread#, to_char(snapshot_time,'dd-mon-yyyy:hh24:mi'),
    to_char(applied_time,'dd-mon-yyyy:hh24:mi'),
    to_char(newest_time,'dd-mon-yyyy:hh24:mi') from V$STANDBY_APPLY_SNAPSHOT;
    Are you using dataguard broker ?

  • Regrading standby database in standard edition

    hi gurus
    i m facing problem in configuring standby database in standard edition windows 2008 .
    os-windows 2008 standard
    oracle 11gr2
    i have copied files from primary n copied it to same location on standby...at that time database was in noarchivelog mode
    then i made it archive n create standby controlfile...also i have created same service name thru oradim with mentioning pfile and same password as on primary
    so it created pfile and password file...
    i opened the database in nomount with pfile
    then mount with standby controlfile it got mounted n the mode is automatically archivelog mode but as i didn't taken the same pfile of primary it didnt take the destinations as such n made archive in flash recovery area
    now i m a bit confused how to apply archive..i copied some archive and placed it in flash rec area
    i tried all options managed recovery.recover standby database,recover database until cancel
    but all give error
    please tell how i proceed..what shud b the right process in standby standard edition
    if possible send me a good link for standby database creation in windows 2008 standard with how to ftp files with mget mput..
    anyone if kindly provide a good link...wud b of great help
    thanks all

    on your standby database you can use:
    set logsource path_to_archives
    This will let Oracle know where the archive files are on the standby database.
    Then you can apply the archives with:
    recover standby database
    Another option is to use Dbvisit Standby to automate the whole standby database (including creation) for you when you have Oracle Standard One or Oracle Standard Edition One.

  • Relocating datafiles on standby database after mount point on stanby is ful

    Hi,
    We have a physical standby database.
    The location of datafiles on primary database are at /oracle/oradata/ and the location of datafiles on standby database are at /oracle/oradata/
    Now we are facing a situation of mount mount getting full on standby database so we need to move some tablespaces to another location on standby.
    Say old location is /oracle/oradata/ and new location is /oradata_new/ and the tablespaces to be relocated are say tab1 and tab2.
    Can anybody tell me whether following steps are correct.
    1. Stop managed recovery on standby database
    alter database recover managed standby database cancel;
    2. Shutdown standby database
    shutdown immediate;
    3. Open standby database in mount stage
    startup mount;
    4. Copy the datafiles to new location say /oradata_new/ using os level command
    4. Rename the datafile
    alter database rename file
    '/oracle/oradata/tab1.123451.dbf', '/oracle/oradata/tab1.123452.dbf','/oracle/oradata/tab2.123451.dbf',''/oracle/oradata/tab2.123452.dbf'
    to '/oradata_new/tab1.123451.dbf', '/oradata_new/tab1.123452.dbf','/oradata_new/tab2.123451.dbf',''/oradata_new/tab2.123452.dbf';
    5. Edit the parameter db_file_name_convert
    alter system set db_file_name_convert='/oracle/oradata/tab1','/oradata_new/tab1','/oracle/oradata/tab2','/oradata_new/tab2'
    6. Start a managed recovery on standby database
    alter database recover managed standby database disconnect from session;
    I am littelbit confused in step 5 as we want to relocate only two tablespaces and not all tablespaces so we have used.
    Can we use db_file_name_convert like this i.e. does this work for only two tablespaces tab1 and tab2.
    Thanks & Regards
    GirishA

    http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/manage_ps.htm#i1010428
    8.3.4 Renaming a Datafile in the Primary Database
    When you rename one or more datafiles in the primary database, the change is not propagated to the standby database. Therefore, if you want to rename the same datafiles on the standby database, you must manually make the equivalent modifications on the standby database because the modifications are not performed automatically, even if the STANDBY_FILE_MANAGEMENT initialization parameter is set to AUTO.
    The following steps describe how to rename a datafile in the primary database and manually propagate the changes to the standby database.
    To rename the datafile in the primary database, take the tablespace offline:
    SQL> ALTER TABLESPACE tbs_4 OFFLINE;
    Exit from the SQL prompt and issue an operating system command, such as the following UNIX mv command, to rename the datafile on the primary system:
    % mv /disk1/oracle/oradata/payroll/tbs_4.dbf
    /disk1/oracle/oradata/payroll/tbs_x.dbf
    Rename the datafile in the primary database and bring the tablespace back online:
    SQL> ALTER TABLESPACE tbs_4 RENAME DATAFILE 2> '/disk1/oracle/oradata/payroll/tbs_4.dbf'
    3> TO '/disk1/oracle/oradata/payroll/tbs_x.dbf';
    SQL> ALTER TABLESPACE tbs_4 ONLINE;
    Connect to the standby database, query the V$ARCHIVED_LOG view to verify all of the archived redo log files are applied, and then stop Redo Apply:
    SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
    SEQUENCE# APP
    8 YES
    9 YES
    10 YES
    11 YES
    4 rows selected.
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
    Shut down the standby database:
    SQL> SHUTDOWN;
    Rename the datafile at the standby site using an operating system command, such as the UNIX mv command:
    % mv /disk1/oracle/oradata/payroll/tbs_4.dbf /disk1/oracle/oradata/payroll/tbs_x.dbf
    Start and mount the standby database:
    SQL> STARTUP MOUNT;
    Rename the datafile in the standby control file. Note that the STANDBY_FILE_MANAGEMENT initialization parameter must be set to MANUAL.
    SQL> ALTER DATABASE RENAME FILE '/disk1/oracle/oradata/payroll/tbs_4.dbf'
    2> TO '/disk1/oracle/oradata/payroll/tbs_x.dbf';
    On the standby database, restart Redo Apply:
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE
    2> DISCONNECT FROM SESSION;
    If you do not rename the corresponding datafile at the standby system, and then try to refresh the standby database control file, the standby database will attempt to use the renamed datafile, but it will not find it. Consequently, you will see error messages similar to the following in the alert log:
    ORA-00283: recovery session canceled due to errors
    ORA-01157: cannot identify/lock datafile 4 - see DBWR trace file
    ORA-01110: datafile 4: '/Disk1/oracle/oradata/payroll/tbs_x.dbf'

  • How to apply archivelog with gap on standby database

    Hi All,
    Oracle Database version : 9.2.0.6
    Following is my sequence of commands on standby database.
    SQL>alter database mount standby database;
    SQL> RECOVER AUTOMATIC STANDBY DATABASE UNTIL CHANGE n;
    ORA-00279: change 809120216 generated at 07/24/2006 09:55:03 needed for thread
    1
    ORA-00289: suggestion : D:\ORACLE\ADMIN\TEST\ARCH\TEST001S19921.ARC
    ORA-00280: change 809120216 for thread 1 is in sequence #19921
    ORA-00278: log file 'D:\ORACLE\ADMIN\TEST\ARCH\TEST001S19921.ARC' no longer
    needed for this recovery
    ORA-00308: cannot open archived log
    'D:\ORACLE\ADMIN\TEST\ARCH\TEST001S19921.ARC'
    ORA-27041: unable to open file
    OSD-04002: unable to open file
    O/S-Error: (OS 2) The system cannot find the file specified.
    I have check the last sequence# on standby database which is 19921. And I have archivelog starting from sequence# 20672 onwards. When I am trying to apply archive log starting from sequence# 20672 , it is searching for 'D:\ORACLE\ADMIN\TEST\ARCH\TEST001S19921.ARC' file and cancel the recovery. Please note that I don't have those missing archive on Primary server as well. So How can I apply the remaining archive log which I do have from 20672 onwards.
    I hope I am not creating any confusion.
    Thx in advance.

    Hi Aijaz,
    Thx for your answer. But my scenario is bit complex. I have checked my standby database status which is not running in recovery mode. I have tried to find archive_gap which is 0 on standby server. I am copying all archived log from primary to standby thru the script every 2 hour and appying them on standby. After applying, the script is removing all applied log files from primary as well as standby. So it is something like I have archivelog from 1,2,3,7,8,9,10. So 4,5 and 6 archivelog are missing which is required when I am trying to recover standby database. Also note that I want to apply 7,8,9,10. I will loose some data from those missing archive but I have cold back any way. I don't have those missing archivelog files(4,5 and 6) anywhere at all. So how can I recover standby database. I am using standby just for the backup purpose.
    I hope my question is clear now.
    Thx in advance
    - Mehul

  • Archivelog Source Directory in Standby Database

    Hi Guys
    I created a standby database yesterday and everything is working correctly.  I need to make some tweaks, however, and one of those is the directory that the standby database expects the archivelogs to be.
    I found that the archivelogs were being shipped to $ORACLE_HOME/dbs and named arch*.arc.  Interestingly a log switch ships the archivelog minus the "arch" at the front and all archivelogs now do not have that format.
    I moved the archivelogs to the correct location and renamed them.  I have been able to set the correct location using standby_archive_dest and can see that the archivelogs are shipped to there. Also, v$archived_log shows the correct path and filename.
    The problem I have is that when I come to apply the archivelogs it still seems to think that they should be in $ORACLE_HOME/dbs and named with "arch" at the front.  Can someone please tell me what parameter I need to change to tell oracle the correct path and filename to use when applying the archivelogs?
    Thanks
    Simon

    Hi saurabh
    I am using the spfile/pfile created by the rman duplicate command.
    Yes, the log_archive_dest_1 and 2 parameters are set.
    This is the spfile from the standby server:
    TAPSPROD.__db_cache_size=570425344
    TAPSDR.__db_cache_size=1191182336
    TAPSPROD.__java_pool_size=33554432
    TAPSDR.__java_pool_size=16777216
    TAPSPROD.__large_pool_size=16777216
    TAPSDR.__large_pool_size=16777216
    TAPSPROD.__oracle_base='/opt/oracle'#ORACLE_BASE set from environment
    TAPSDR.__oracle_base='/opt/oracle'#ORACLE_BASE set from environment
    TAPSPROD.__pga_aggregate_target=4831838208
    TAPSDR.__pga_aggregate_target=4831838208
    TAPSPROD.__sga_target=1610612736
    TAPSDR.__sga_target=1610612736
    TAPSPROD.__shared_io_pool_size=0
    TAPSDR.__shared_io_pool_size=0
    TAPSPROD.__shared_pool_size=956301312
    TAPSDR.__shared_pool_size=369098752
    TAPSPROD.__streams_pool_size=16777216
    TAPSDR.__streams_pool_size=0
    *.audit_file_dest='/opt/oracle/admin/TAPSDR/adump'
    *.audit_trail='NONE'
    *.compatible='11.2.0.0.0'
    *.control_files='/opt/oracle/admin/TAPSDR/controlfiles/1/control.TAPSDR.01.ctl','/opt/oracle/admin/TAPSDR/controlfiles/2/control.TAPSDR.02.ctl','/opt/oracle/admin/TAPSDR/controlfiles/3/control.TAPSDR.03.ctl'
    *.db_block_size=8192
    *.db_create_file_dest='+TAPSDATA'
    *.db_create_online_log_dest_1='/opt/oracle/admin/TAPSDR/redologs/1'
    *.db_create_online_log_dest_2='/opt/oracle/admin/TAPSDR/redologs/2'
    *.db_create_online_log_dest_3='/opt/oracle/admin/TAPSDR/redologs/3'
    *.db_create_online_log_dest_4='/opt/oracle/admin/TAPSDR/redologs/4'
    *.db_domain=''
    *.db_flashback_retention_target=2880
    *.db_name='TAPSPROD'
    *.db_recovery_file_dest_size=4070572032
    *.db_recovery_file_dest='+TAPSDATA'
    *.db_unique_name='TAPSDR'
    *.diagnostic_dest='/opt/oracle/diag/'
    *.dispatchers='(PROTOCOL=TCP) (SERVICE=TAPSDRXDB)'
    *.event=''
    *.fal_client='TAPSDR'
    *.fal_server='TAPSPROD'
    *.job_queue_processes=10
    *.log_archive_config='dg_config=(TAPSPROD,TAPSDR)'
    *.log_archive_dest_1='LOCATION=/opt/oracle/rman/sbvx10603/TAPSDR/archivelog VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=TAPSPROD'
    *.log_archive_dest_2='service=TAPSPROD ASYNC valid_for=(ONLINE_LOGFILE,PRIMARY_ROLE) db_unique_name=TAPSPROD'
    *.log_archive_format='%t_%s_%r.arc'
    *.log_archive_max_processes=5
    *.open_cursors=300
    *.pga_aggregate_target=4831838208
    *.processes=150
    *.remote_login_passwordfile='EXCLUSIVE'
    *.sga_target=1610612736
    *.smtp_out_server='localhost:25'
    *.standby_archive_dest='/opt/oracle/rman/sbvx10603/TAPSDR/archivelog'
    *.standby_file_management='AUTO'
    *.undo_tablespace='TBS_UNDO'

  • Error in standby database

    Hi, I've Two database one for primary(GISC) and one for standby (GISCST) when i start open standby database i appeare erro :
    ORA-16004: backup database requires recovery
    ORA-01152: file 1 was not restored from a sufficiently old backup
    ORA-01110: data file 1: 'D:\ORACLE\ORADATA\ORCLSB\SYSTEM01.DBF'
    I take the copy the datafiles from primary database and Pase them to the Standby database
    and the Enviroment of two database is :
    SPfile for primary(GISC) IS:
    *.compatible='10.2.0.3'
    *.control_files='C:\oracle\product\10.2.0\oradata\gisc\CONTROL01.CTL','C:\oracle\product\10.2.0\oradata\gisc\CONTROL02.CTL','C:\oracle\product\10.2.0\oradata\gisc\CONTROL03.CTL'
    *.db_block_size=8192
    *.db_cache_size=30M#DEMO
    *.db_file_multiblock_read_count=16
    *.DB_FILE_NAME_CONVERT='C:\oracle\product\10.2.0\oradata\gisc','C:\oracle\product\10.2.0\oradata\giscst'
    *.db_name='GISC'
    *.fal_client='gisc'
    *.fal_server='giscst'
    *.LOG_ARCHIVE_CONFIG='DG_CONFIG= (GISC, GISCST)'
    *.LOG_ARCHIVE_DEST_1='LOCATION=C:\oracle\product\10.2.0\flash_recovery_area\ VALID_FOR=(ALL_LOGFILES, ALL_ROLES) DB_UNIQUE_NAME=GISC'
    *.LOG_ARCHIVE_DEST_2='SERVICE=GISCST VALID_FOR=(ONLINE_LOGFILES, PRIMARY_ROLE) DB_UNIQUE_NAME=GISCST'
    *.LOG_ARCHIVE_DEST_STATE_1='ENABLE'
    *.LOG_ARCHIVE_DEST_STATE_2='ENABLE'
    *.LOG_FILE_NAME_CONVERT='C:\oracle\product\10.2.0\oradata\gisc','C:\oracle\product\10.2.0\oradata\giscst'
    *.optimizer_mode='choose'
    *.parallel_threads_per_cpu=4#SMALL
    *.pga_aggregate_target=30M#DEMO
    *.query_rewrite_enabled='true'
    *.query_rewrite_integrity='trusted'
    *.REMOTE_LOGIN_PASSWORDFILE='EXCLUSIVE'
    *.shared_pool_size=50M#DEMO
    *.STANDBY_FILE_MANAGEMENT='AUTO'
    *.star_transformation_enabled='true'
    *db_unique_name='gisc'
    *.service_name='gisc'
    *.instance_name='gisc'
    *.LOG_ARCHIVE_FORMAT='log%t_%s_%r.arc'
    listener.ora for primary(GISC):
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521))
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = c:\oracle\product\10.2.0)
    (PROGRAM = extproc)
    (SID_DESC =
    (GLOBAL_DBNAME = gisc)
    (ORACLE_HOME = C:\oracle\product\10.2.0)
    (SID_NAME = GISC)
    (SID_DESC =
    (GLOBAL_DBNAME = GISC_DGMGRL)
    (ORACLE_HOME = C:\oracle\product\10.2.0)
    (SID_NAME = GISC)
    TNSNAME For (GISC):
    GISC =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521))
    (CONNECT_DATA =
    (SID = GISC_DGMGRL)
    GISCST =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.3)(PORT = 1521))
    (CONNECT_DATA =
    (SID = GISCST_DGMGRL)
    SPfile for Standby database (GISCST):
    *.compatible='10.2.0.3'
    *.control_files='C:\oracle\product\10.2.0\oradata\giscst\CONTROL01.CTL','C:\oracle\product\10.2.0\oradata\giscst\CONTROL02.CTL','C:\oracle\product\10.2.0\oradata\giscst\CONTROL03.CTL'
    *.db_block_size=8192
    *.db_cache_size=30M#DEMO
    *.db_file_multiblock_read_count=16
    *.DB_FILE_NAME_CONVERT='C:\oracle\product\10.2.0\oradata\gisc','C:\oracle\product\10.2.0\oradata\giscst'
    *.db_name='GISC'
    *.fal_client='giscst'
    *.fal_server='gisc'
    *.LOG_ARCHIVE_CONFIG='DG_CONFIG= (GISC, GISCST)'
    *.LOG_ARCHIVE_DEST_1='LOCATION=C:\oracle\product\10.2.0\flash_recovery_area\ VALID_FOR=(ALL_LOGFILES, ALL_ROLES) DB_UNIQUE_NAME=GISCST'
    *.LOG_ARCHIVE_DEST_2='SERVICE=GISC VALID_FOR=(ONLINE_LOGFILES, PRIMARY_ROLE) DB_UNIQUE_NAME=GISC'
    *.LOG_ARCHIVE_DEST_STATE_1='ENABLE'
    *.LOG_ARCHIVE_DEST_STATE_2='ENABLE'
    *.LOG_FILE_NAME_CONVERT='C:\oracle\product\10.2.0\oradata\gisc','C:\oracle\product\10.2.0\oradata\giscst'
    *.optimizer_mode='choose'
    *.parallel_threads_per_cpu=4#SMALL
    *.pga_aggregate_target=30M#DEMO
    *.query_rewrite_enabled='true'
    *.query_rewrite_integrity='trusted'
    *.REMOTE_LOGIN_PASSWORDFILE='EXCLUSIVE'
    *.shared_pool_size=50M#DEMO
    *.STANDBY_FILE_MANAGEMENT='AUTO'
    *.star_transformation_enabled='true'
    *db_unique_name='giscst'
    *.service_name='giscst'
    *.instance_name='giscst'
    *.LOG_ARCHIVE_FORMAT='log%t_%s_%r.arc'
    listener.ora for standby (GISCST):
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.3)(PORT = 1521))
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = c:\oracle\product\10.2.0)
    (PROGRAM = extproc)
    (SID_DESC =
    (GLOBAL_DBNAME = giscst)
    (ORACLE_HOME = C:\oracle\product\10.2.0)
    (SID_NAME = GISCST)
    (SID_DESC =
    (GLOBAL_DBNAME = GISCST_DGMGRL)
    (ORACLE_HOME = C:\oracle\product\10.2.0)
    (SID_NAME = GISCST)
    TNSNAME for standby (GISCST):
    GISCST =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.3)(PORT = 1521))
    (CONNECT_DATA =
    (SID = GISCST_DGMGRL)
    GISC =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521))
    (CONNECT_DATA =
    (SID = GISC_DGMGRL)
    then i do ping to service :
    Microsoft Windows [Version 6.1.7601]
    Copyright (c) 2009 Microsoft Corporation. All rights reserved.
    C:\Users\Administrator>tnsping gisc
    TNS Ping Utility for 32-bit Windows: Version 10.2.0.3.0 - Production on 12-FEB-2
    012 09:49:17
    Copyright (c) 1997, 2006, Oracle. All rights reserved.
    Used parameter files:
    C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
    Used TNSNAMES adapter to resolve the alias
    Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
    (HOST = 192.168.0.2)(PORT = 1521))) (CONNECT_DATA = (SID = GISC_DGMGRL)))
    OK (0 msec)
    C:\Users\Administrator>tnsping giscst
    TNS Ping Utility for 32-bit Windows: Version 10.2.0.3.0 - Production on 12-FEB-2
    012 09:49:40
    Copyright (c) 1997, 2006, Oracle. All rights reserved.
    Used parameter files:
    C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
    Used TNSNAMES adapter to resolve the alias
    Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
    (HOST = 192.168.0.3)(PORT = 1521))) (CONNECT_DATA = (SID = GISCST_DGMGRL)))
    OK (10 msec)
    Microsoft Windows [Version 6.1.7600]
    Copyright (c) 2009 Microsoft Corporation. All rights reserved.
    C:\Users\gis>tnsping gisc
    TNS Ping Utility for 32-bit Windows: Version 10.2.0.3.0 - Production on 12-FEB-2
    012 09:52:22
    Copyright (c) 1997, 2006, Oracle. All rights reserved.
    Used parameter files:
    C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
    Used TNSNAMES adapter to resolve the alias
    Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
    (HOST = 192.168.0.2)(PORT = 1521))) (CONNECT_DATA = (SID = GISC_DGMGRL)))
    OK (10 msec)
    C:\Users\gis>tnsping giscst
    TNS Ping Utility for 32-bit Windows: Version 10.2.0.3.0 - Production on 12-FEB-2
    012 09:52:30
    Copyright (c) 1997, 2006, Oracle. All rights reserved.
    Used parameter files:
    C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
    Used TNSNAMES adapter to resolve the alias
    Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
    (HOST = 192.168.0.3)(PORT = 1521))) (CONNECT_DATA = (SID = GISCST_DGMGRL)))
    OK (0 msec)

    CKPT wrote:
    Hello,
    Do as follows.
    From standby:-
    SQL> alter database recover managed standby database disconnect from session;Later post the content from alert log file.
    Now, Post below Commands from primary & check for any errors in Alert log file of primary
    set lines 100
    set numwidth 15
    column ID format 99
    column "SRLs" format 99
    column active format 99
    col type format a4
    select     ds.dest_id id
    ,     ad.status
    ,     ds.database_mode db_mode
    ,     ad.archiver type
    ,     ds.recovery_mode
    ,     ds.protection_mode
    ,     ds.standby_logfile_count "SRLs"
    ,     ds.standby_logfile_active active
    ,     ds.archived_seq#
    from     v$archive_dest_status     ds
    ,     v$archive_dest          ad
    where     ds.dest_id = ad.dest_id
    and     ad.status != 'INACTIVE'
    order by
         ds.dest_idID STATUS DB_MODE TYPE RECOVERY_MODE PROTECTION_MODE SRLs ACTIVE
    ARCHIVED_SEQ#
    1 VALID MOUNTED-STANDBY ARCH MANAGED MAXIMUM PERFORMANCE 0 0
    0
    2 VALID MOUNTED-STANDBY ARCH MANAGED MAXIMUM PERFORMANCE 0 0
    0
    11 VALID MOUNTED-STANDBY ARCH MANAGED MAXIMUM PERFORMANCE 0 0
    0
    >
    SQL> select error_code,to_char(timestamp,'DD-MON-YYYY HH24:MI:SS') ,message,facility from v$dataguard_status;ERROR_CODE TO_CHAR(TIMESTAMP,'D
    MESSAGE
    FACILITY
    0 15-FEB-2012 13:05:02
    ARC0: Archival started
    Log Transport Services
    0 15-FEB-2012 13:05:02
    ARC1: Archival started
    Log Transport Services
    ERROR_CODE TO_CHAR(TIMESTAMP,'D
    MESSAGE
    FACILITY
    0 15-FEB-2012 13:05:02
    ARC1: Becoming the 'no FAL' ARCH
    Log Transport Services
    0 15-FEB-2012 13:05:02
    ARC1: Becoming the 'no SRL' ARCH
    ERROR_CODE TO_CHAR(TIMESTAMP,'D
    MESSAGE
    FACILITY
    Log Transport Services
    0 15-FEB-2012 13:05:02
    ARC0: Becoming the heartbeat ARCH
    Log Transport Services
    0 15-FEB-2012 13:09:57
    ERROR_CODE TO_CHAR(TIMESTAMP,'D
    MESSAGE
    FACILITY
    Attempt to start background Managed Standby Recovery process
    Log Apply Services
    0 15-FEB-2012 13:09:57
    MRP0: Background Managed Standby Recovery process started
    Log Apply Services
    ERROR_CODE TO_CHAR(TIMESTAMP,'D
    MESSAGE
    FACILITY
    0 15-FEB-2012 13:10:03
    Managed Standby Recovery not using Real Time Apply
    Log Apply Services
    0 15-FEB-2012 13:10:03
    Media Recovery Waiting for thread 1 sequence 7
    Log Apply Services
    ERROR_CODE TO_CHAR(TIMESTAMP,'D
    MESSAGE
    FACILITY
    9 rows selected.

  • Trying to recover an standby database

    - Oracle 10.2.0.4 Standard Edition
    - O/S: Windows Server 2003
    - Phisically Standby
    We have primary and a standby database. My standby database was synchronized through copying archive redo logs from Primary to Standby. They were copied every 15 min to standby server and then they were recovered from there. Because a lot of archive logs were missed for ever, now my standby database is not synchronized with my primary.
    In order to recover my Standby, one week ago I followed these instructions:
    Step 1: On the standby database check the current scn.
    STDBY> select current_scn from v$database;
    CURRENT_SCN
    2527075174
    Step 2: On the primary database create the needed incremental backup from the above SCN
    C:\Documents and Settings\frego>rman target /
    run {
    allocate channel c1 type disk;
    BACKUP INCREMENTAL FROM SCN 2527075174 DATABASE
    format '\\srvbackup\archiveslogs-35\arch\incr_bkp_%U';
    Step 3: Cancel managed recovery at the standby database
    STDBY>alter database recover managed standby database cancel;
    Media recovery complete.
    Copied the backup files to standby server to "D:\arch\" folder.
    Step 4: Catalog the Incremental Backup Files at the Standby Database
    D:\arch> rman target /
    RMAN> CATALOG START WITH 'D:\arch\';
    Step 5: Apply the Incremental Backup to the Standby Database
    RMAN> RECOVER DATABASE NOREDO;
    Step 6: Put the standby database back to managed recovery mode.
    STDBY>> recover managed standby database disconnect;
    Media recovery complete.
    Step 7: On the primary create new standby controlfile
    PRIM>alter database create standby controlfile as 'C:\incr_bkp\standby01.ctl';
    System altered.
    Step 8: At Standby .. Replace standby controlfile at all location as shown by controle_files parameter.
    Copy the standby control file to the standby site. Shutdown the standby database and replace the stanby controlfiles and restart the >standby database in managed recovery mode...
    Problem was that there were new datafiles created in primary that didn't exist in standby. I had to created them manually on standby:
    ALTER DATABASE CREATE DATAFILE 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB3.ORA' AS 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB3.ORA';
    ALTER DATABASE CREATE DATAFILE 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB4.ORA' AS 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB4.ORA';
    ALTER DATABASE CREATE DATAFILE 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BKP.ORA' AS 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BKP.ORA';
    ALTER DATABASE CREATE DATAFILE 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB5.ORA' AS 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB5.ORA';
    ALTER DATABASE CREATE DATAFILE 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB_A.ORA' AS 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB_A.ORA';
    ALTER DATABASE CREATE DATAFILE 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB_B.ORA' AS 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB_B.ORA';
    ALTER DATABASE CREATE DATAFILE 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB_C.ORA' AS 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB_C.ORA';
    ALTER DATABASE CREATE DATAFILE 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB_D.ORA' AS 'D:\ORADATA\PROD\OPEXT\DATAFILES_DATA\SIPESG_BLOB_D.ORA';
    ALTER DATABASE CREATE DATAFILE 'D:\ORADATA\PROD\OPEXT\DATAFILES_IDX\PADRONIDX17.ORA' AS 'D:\ORADATA\PROD\OPEXT\DATAFILES_IDX\PADRONIDX17.ORA';
    Also, I tried this commands:
    On Standby:
    RMAN> SHUTDOWN;
    RMAN> STARTUP NOMOUNT;
    RMAN> RESTORE STANDBY CONTROLFILE FROM 'D:\arch\standby01.ctl';
    RMAN> SHUTDOWN;
    RMAN> STARTUP MOUNT;
    STDB> ALTER DATABASE CLEAR LOGFILE GROUP 1;
    STDB> ALTER DATABASE CLEAR LOGFILE GROUP 2;
    STDB> ALTER DATABASE CLEAR LOGFILE GROUP 3;
    STDB> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;
    Database altered.
    SQL> alter database open read only;
    alter database open read only
    ERROR at line 1:
    ORA-01154: database busy. Open, close, mount, and dismount not allowed now
    SQL> recover managed standby database cancel;
    Media recovery complete.
    SQL> alter database open read only;
    alter database open read only
    ERROR at line 1:
    ORA-16004: backup database requires recovery
    ORA-01152: file 1 was not restored from a sufficiently old backup
    ORA-01110: data file 1: 'D:\ORADATA\PROD\OPEXT\SYSTEM01.DBF'My Questions:
    - What is missing in order to open standby database?
    - Can I again generate rman incremental backups on Primary (from SCN 2527075174), copy them to Standby and start recovery again? Would it generate duplicate records on tables?
    - Should I generate new rman incremental backup pieces on Primary (from last SCN of Standby), copy them to standby and apply there?
    Remember that my Primary is growing every day and those rman backup pieces and standby01.ctl, that are copied on my standby server, are from one week ago.
    Thanks
    Edited by: user521219 on 22-jun-2012 9:31

    user521219 wrote:
    Should I restart and mount my standby database again?
    If I apply Step 3 now:
    STB> alter database recover managed standby database cancel;
    ERROR at line 1:
    ORA-16136: Managed Standby Recovery not activeRefer the above mentioned link. First restore controlfile & then perform recovery on standby database.
    >
    user521219      
         Newbie
    Handle:      user521219
    Status Level:      Newbie
    Registered:      Jul 20, 2006
    Total Posts:      48
    Total Questions:      29 (23 unresolved)
    >
    Consider closing your threads and keep the forum clean.
    Edited by: CKPT on Jun 22, 2012 10:43 PM

  • Conceptual Question-Standby Database

    Hi all,
    I was just going through this documentation
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/log_apply.htm
    In the beginning it says
    "Log apply services automatically apply redo to standby databases to maintain synchronization with the primary database and allow transactionally consistent access to the data"
    I want to know How does process takes redo log and apply to datafile?What is basically happening inside?
    Cheers,
    Neerav

    Dear Neerav999,
    If i would know your Oracle database version, i could give you a more detailed explanation but i will give it anyway;
    There are options that you can use for the Oracle Data Guard. Data Guard is used for replicating the primary database to the standby database via the archivelogs and/or with the redologs. You may not have a standby redolog for maximized performance protection level and it is not mandatory however you need to have standby redos for maximized availiability and protection, protection levels of the Oracle database.
    Starting from 11g, you can able to cancel the recovery process on standby site and open the standby database read only than (magic goes here) you can start the media recovery! The command list as follow for 11g;
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL --> This command will cancel the MRP0 process and will stop the continuous media recovery
    ALTER DATABASE OPEN READ ONLY
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE [USING CURRENT LOG FILE] DISCONNECT FROM SESSION;
    --> Above command will start the media recovery process ON THE READ ONLY DATABASE!You can give it a try that one by creating a dummy table on primary and wait for one or two log switches and check back the standby database. You are going to see the table has been also created there.
    So answer to your eternal question! :)
    MRP process is there to fetch and request the archivelogs from the primary site. This process can be started with the below command;
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;You may have a simple test of cource. Cancel the MRP process and switch some logfiles on primary site. Than rerun above command to restart the MRP process and check v$dataguard_status fixed view. You will see that MRP is going to try to fetch the missing archivelog files and will try to close down the gap between the primary and the standby database. Here let me show you another 11g feature of Data Guard.
    On 11g you can compress the redologs! What do you need to compress it? There is maybe the most threatning problem of the Data Guard is the connection itself. It should be fast and reliable. Otherwise the MRP process will fall behind and if you are running on maximum performance mode, it will also decrease the performance of the primary database and will hardly close the gap. You 11g Data Guard does is it compresses the log files in the fetching period. If its done with fetching and closed the gap than the normal transmission without the compression will continue to operate. Here is an example of redo compression parameter;
    alter system set log_archive_dest_n = 'service= ORCLSTBY
    LGWR ASYNC valid_for=(ONLINE_LOGFILES,PRIMARY_ROLE)
    db_unique_name=ORCLSTBY compression=enable'I have checked the link that you have given and its Oracle 10g but i have just written it to understand some real factors between the 10g Data Guard and the 11g Data Guard. There are also other changes but if you can go to the 11g New Features site you will see Arup Nanda's posts about it.
    If you are to use the standby redologs and it is called "Real Time Apply" and you can see it on v$dataguard_status fixed view. Here is the information from the online documentation;
    6.2.1 Using Real-Time Apply to Apply Redo Data Immediately
    If the real-time apply feature is enabled, log apply services can apply redo data as it is received, without waiting for the current standby redo log file to be archived. This results in faster switchover and failover times because the standby redo log files have been applied already to the standby database by the time the failover or switchover begins.
    Use the ALTER DATABASE statement to enable the real-time apply feature, as follows:
        *For physical standby databases, issue the ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE statement.
        *For logical standby databases, issue the ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE statement.
    Standby redo log files are required to use real-time apply.Here is a fixed view that you may see the processes;
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/dynviews_1169.htm#REFRN30144
    PROCESS      VARCHAR2(9)      Type of process whose information is being reported:
        *RFS - Remote file server
        *MRP0 - Detached recovery server process
        *MR(fg) - Foreground recovery session
        *ARCH - Archiver process
        *FGRD
        *LGWR
        *RFS(FAL)
        *RFS(NEXP)
        *LNS network server processAll above indications are most verbose and your answer to your question resides here but you need to read it carefully to understand how Oracle applies log files.
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/manage_ps.htm#i1009613
    Regards.
    Ogan

  • Need help on Standby database v8.1.7 on Windows

    Hello All,
    Our current setup to create a standby database consists of a bunch of scripts. I'm trying to convert this such that we can use OEM 9.2 and have jobs to do the backup and be able to create the standby database using point and click. Does anyone have this setup?
    This is where I am....I've created the primary database and the standby database. They both work well and next i try to do a failover. The failover works and my new primary database is now active. I want to recreate the standby database now (old primary).
    I do a backup of the new primary database do say D:\backup\. I go on the standby and I restore the controlfile. Next when I attempt to do the restore, I get the following error: RMAN-03002: failure during compilation of command
    RMAN-03013: command type: IRESTORE
    RMAN-06026: some targets not found - aborting restore
    RMAN-06023: no backup or copy of datafile 1 found to restore.
    How can i fix this? Is there a way to tell RMAN that the backup is under D:\Backup\? How do I catalog the files? I remember on 10g you could do this..but that's if you use a recovery catalog. In this case, i'm using the controlfile to do the restore...not using Recovery Catalog.
    Any assistance is appreciated.
    Thanks!

    Upon reading the document i am not clear on upgrade path like do i need to upgrade clusterware as well or not?You need to upgrade the clusterware before RDBMS....therefore it is not optional. You first need to upgrade the clusterware and then the RDBMS.
    The steps listed by you seems to be in order (from a high-level).

  • Failover from standby database to primary database

    Hi,
    Can anyone suggest me, How to do " Standby DataGuard database to primary database (dataguard)".
    Kindly Give me steps.
    Thanks,
    Shweta

    Hi
    Follow these steps
    Oracle switchover operation:
    1.     Check and verify the role parameter on the v$parameters both primary and standby
    On Primary
    Log_archive_dest_1=”this is the local archive destination”
    +Log_archive_dest_2=”This is the Service [TNS ENTRY]”+
    Log_archive_dest_state_1=Enable
    Log_archive_dest_state_2=Enable
    Fal_server=”this should have the tns entry for the standby
    Fal_Client=”this should have the tns entry for the primary
    Standby_archive_dest=”This should have the Location where the archive located”
    Standby_File_Management=AUTO
    On Standby
    Log_archive_dest_1=”this is the local archive destination”
    +Log_archive_dest_2=”This is the Service [TNS ENTRY]”+
    Log_archive_dest_state_1=Enable
    Log_archive_dest_state_2=DEfer
    Fal_server=”this should have the tns entry for the primary
    Fal_Client=”this should have the tns entry for the standby
    Standby_archive_dest=”This should have the Location where the archive located”
    Standby_File_Management=AUTO
    2.     Down all the applications connects to the database
    3.     Shutdown both primary and standby databases
    4.     For RAC Keep Only one primary and One standby up and all other nodes should be down
    5.     Check the Primary database on Open mode and the Standby database on mount stage
    6.     On Primary
    SQL>select switchover_status from v$database;Sessions Active or To standby will be appearing on the result
    SQL> alter database commit to switchover to standby with session shutdown;
    SQL> shutdown Immediate;
    SQL>startup nomount;
    SQL>alter database mount standby database;
    SQL>Alter system set log_Archive_dest_state_2=defer;7.     On Standby
    SQL>select switchover_status from  v$database;it is acceptable to have Sessions Active or To Primary
    SQL>alter database commit to switchover to primary with session shutdown;
    SQL>shutdown immediate;
    SQL>Startup;
    SQL.>Alter system set log_archive_dest_state_2=enable;8.     On Primary
    start the managed recovery
    SQL>Alter database recover managed standby database disconnect from session;9.     Check the log shipment is working from New Primary to New Standby Using
    SQL>Alter system switch logfile; ---- On New Primary.check the alert log on both Primary and Standby for the log shipment and Media recovery.
    10.     If the switch over fail issue the following statement on standby (ORACLE 9i)
    SQL> alter database recover managed standby database finish skip standby logfile ┘
    SQL> alter database commit to switchover to primary┘
    SQL> shutdown immediate;
    SQL> Startup;11.     If this don’t work please issue the below statement
    SQL> alter database activate standby database skip standby logfile;12.     If the switch over fail issue the following statement on standby (ORACLE 10g and above)
    SQL> alter database recover managed standby database finish force;
    SQL> alter database commit to switchover to primary;
    SQL> alter database open;
    SQL> shutdown Immediate;
    SQL> startup;13. Added the temp file to your temp tablespace
    If you follow the steps (10,11 & 12 ) you have to recreate the standby again. those steps are actually fail over steps. Hope this will be helpful
    Cheers
    Kanchana

  • How to find the timestamp and SCN in the standby database?

    Hai,
    I have Oracle 9.2.0.4 RAC with 2 nodes in the production. The logs generated at these servers will be manully moved to my standby database and will be applied. To know what isthe maximum log files applied in the standby database, i am using the below mentioned query in the standby database,
    Select thread#,max(sequence#) from v$log_history group by thread#
    In general i am using "recover standby database until cancel" command and then checking the database with the above mentioned query whether all the logs are applied or not.
    If i use time based or scn based recovery in standby database i.e., "recover standby database until time <time>" or "recover standby database until change <scn number>" , after completion of the recovery, apart from the message "Media recovery complete" or by seeing the alert log, is there any way to query the standby database, so that i can identify the time or scn upto which the archived redo log files got applied.

    Hi Sridhar,
    There should be some view which will have applied_scn information. There is one more option i can suggest, you can create a heart beat table in production with 2 column like scn and timestamp. Update this table every minute. From standby db you can query this table and get fair idea on applied_scn and timestamp.
    While exporting you can export using flashback_scn by taking the value from heartbeat table of standby.
    This heartbeat table is used very common in streams environment. Just see if this helps you.
    hth,
    http://borndba.com

  • Redo log files are not applying to standby database

    Hi everyone!!
    I have created standby database on same server ( windows XP) and using oracle 11g . I want to synchronize my standby database with primary database . So I tried to apply redo logs from primary to standby database as follow .
    My standby database is open and Primary database is not started (instance not started) because only one database can run in Exclusive Mode as DB_NAME is same for both database.  I run the following command on the standby database.
                SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
    It returns "Database altered" . But when I checked the last archive log on primary database, its sequence is 189 while on standby database it is 177. That mean archived redo logs are not applied on standby database.
    The tnsnames.ora file contains entry for both service primary & standby database and same service has been used to transmit and receive redo logs.
    1. How to resolve this issue ?
    2.Is it compulsory to have Primary database open ?
    3. I have created standby  control file by using  command
              SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS ‘D:\APP\ORACLE\ORADATA\TESTCAT\CONTROLFILE\CONTROL_STAND1.CTL‘;
    So database name in the standby control file is same as primary database name (PRIM). And hence init.ora file of standby database also contains DB_NAME = 'PRIM' parameter. I can't change it because it returns error of mismatch database name on startup. Should  I have different database name for both or existing one is correct ?
    Can anybody help me to come out from this stuck ?
    Thanks & Regards
    Tushar Lapani

    Thank you Girish. It solved  my redo apply problem. I set log_archive_dest parameter again and then I checked archive redo log sequence number. It was same for both primary and standby database. But still table on standby database is not being refresh.
    I did following scenario.
    1.  Inserted 200000 rows in emp table of Scott user on Primary database and commit changes.
    2. Then I synchronized standby database by using Alter database command. And I also verify that archive log sequence number is same for both database. It mean archived logs from primary database has been applied to standby database.
    3. But when I count number of rows in emp table of scott user on standby database, it returns only 14 rows even of redo log has been applied.
    So my question is why changes made to primary database is not reflected on standby database although redo logs has been applied ?
    Thanks

Maybe you are looking for

  • MBP unable to detect TV as display

    Hello. I have a Macbook Pro that I'm trying to connect to a TV. I know the adapter, TV, component video, and svideo cables are working because I've tested with an older Macbook (black case) and it works fine. With the Macbook Pro (white case, early 2

  • Integration process communicating with guided procedure

    Hi everybody, I read that it is possible to exchange messages between Integration Processes and SAP Business Workflow. Is it also possible to trigger and communicate to a guided procedure in a Integration process? Thanks, Mane

  • Function modules for deleting photos in archive

    Hi all, I got the requirement to delete the photos which was uploaded through archive link (OAAD). Could I know which function modules should I use to delete the link as well as document? When I searched in forums I found some function modules: ARCHI

  • Substr in external table definition

    Hi Guys, I have an external table where I am loading a txt file. The issue being, in the txt file I have a column with a variable length. This column houses the application/website link that is not of a fixed length. My external table field width is

  • Problems with iOS5 update

    I have just updated my iPhone4 to the new iOS5 and am having major problems that I can't seem to find a way to fix. On my itunes it now shows my phone as being over capacity by 15.7gb, have tried a number of things and still not fixed. Also when the