Adding online redo logs with standby database in place

Hi group,
I have decided to add one new member to my existing redo log groups and an additional redo log group to my primary database.
That change went ok without problems. I assumed that with standby_file_management=auto the equivalent online redo logs are created on the standby database. But this is not the case.
The documentation is unclear about this point and I did not find anything suitable on metalink. The docs suggest to cancel managed recovery on the standy, setting standby_file_management to MANUAL and then adding online logs, quote:
"To add an online redo log, use a SQL statement such as this:
SQL> ALTER DATABASE ADD STANDBY LOGFILE 'prmy3.log' SIZE 100K;"
This however - IMO - adds a new STANDBY redo log to the standby database, what I need is an ONLINE redo log.
Does anybody have some experience to share here?
Facts:
Solaris 8
Oracle 9.2.0.6
Thanks!
Martin

OK, for those who come across the same problem.
You need to create a new standby controlfile, copy it as well as any new online redo log from production to the standby environment.
Once the files are in place, start the standby as normal and open it read only to see if everything is ok:
startup nomount
alter database mount standby database;
alter database open read only
Only when there are no errors in your alert.log you are safe.
Martin

Similar Messages

  • Online redo logs vs standby redo logs

    Hi All,
    Oracle version : 10.2.0.4
    OS : SunOS 5.10 Generic_118855-36 i86pc i386 i86pc
    This might be a silly question for the experts :(
    We are having 2 standby databases and 1 logical database. Everything is running fine , I have one confusion : My primary server having 3 online redo log files and 3 standby redo log files (on primary local), but as per the architecture standby redo logs should be on standby server.My question is whether standby redo logs on standby are online redo logs of standby server or standby redo logs of primary server. e.g If i perform a log switch on primary then what is the role of sync and affirm, will lgwr write parallel on online redo logs ,standby redo logs (of primary) or online redo logs (of primary) and online redo logs (which is known as standby redo logs on standby ). Please help me to understand the scenerio.
    Thanks in advance!

    RFS receives redo information from the primary database.
    RFS can write the redo into standby redo logs or directly to archived redo logs. Each LNSn and ARCn process from the primary database has its own RFS process.
    A standby redo log is used only when the database is in the standby role to store redo data received from the primary database. Standby redo logs form a separate pool of log file groups.
    Configuring standby redo log files is highly recommended on all standby databases in a Data Guard configuration, including the primary database to aid in role reversal.
    A standby redo log is required to implement:
    • The maximum protection and maximum availability levels of data protection
    • Real-time apply
    • Cascaded redo log destinations
    Standby redo logs are recommended for maximum performance data protection mode. Unless you are using the real-time apply feature, standby redo logs must be archived before the data can be applied to the standby database. The standby archival operation occurs automatically.

  • When is anything written to standby redo logs on standby database?

    I am on Oracle 10.2.0.4 on HP UNIX. I have read Oracle 10.2 concepts guide on technet.oracle.com, have read may article on metalink and internet, yet I am unable to verify when anything is written to standby redo logs on stand by database.
    I have a simple database reconfiguration: a primary database and one standby database.
    I created primary database and set up log_archive_dest_2 to use LGWR SYNC AFFIRM
    I have created standby redo logs on primary.
    alter database add standby logfile GROUP
    I create standby control file on primary.
    I copied all the primary information to create standby database. I have put standby database in managed recovery.
    I did archive log switches, I created a table and inserted information in table.
    I never saw standby redo logs updated on standby database by looking at timestamp of standby redo log files.
    I then setup database in maximum availability mode by running following on primary:
    Alter database set standby database to maximize availability
    When I do insert into my tables, I do see standby redo log files on primary database being updated, but I have never seen standby redo logs on standby database updated. Why?
    I am still at loss when actually standby redo logs are updated on standby database.
    When I read Oracle 9i database documentation on data guard, it says that you do not need standby redo logs on primary instead you need them on standby. Only reason, you need them on primary is from primary changes role to standby database, so standby redo logs on standby database should be updated instead of standby redo logs on primary.

    What is the PROTECTION_MODE ,PROTECTION_LEVEL values of your database.
    As per metalink:--
    Create standby redo log files, if necessary:
    Standby redo logs are necessary for the higher protection levels such as
    Guaranteed, Instant, and Rapid. In these protection modes LGWR from the
    Primary host writes transactions directly to the standby redo logs.
    This enables no data loss solutions and reduces the amount of data loss
    in the event of failure. Standby redo logs are not necessary if you are using
    the delayed protection mode.
    If you configure standby redo on the standby then you should also configure
    standby redo logs on the primary database. Even though the standby redo logs
    are not used when the database is running in the primary role, configuring
    the standby redo logs on the primary database is recommended in preparation
    for an eventual switchover operation.
    Standby redo logs must be archived before the data can be applied to the
    standby database. The standby archival operation occurs automatically, even if
    the standby database is not in ARCHIVELOG mode. However, the archiver process
    must be started on the standby database. Note that the use of the archiver
    process (ARCn) is a requirement for selection of a standby redo log.
    METALINK ID:- Doc ID: Note:219344.1
    Edited by: Anand... on Sep 15, 2008 2:15 AM

  • Number of Standby Redo Logs on Standby Database

    Hello All:
    Per various docs i calculated and created the number of standby redo logs.
    I created 6 standby redo logs in addition to 3 online.
    However, i always see only two standby redo logs being used. Any ideas?
    Thanks
    San~

    try:
    alter system archive log current;
    and get information:
    select * from v$logfile;
    select * from v$log;
    Thanks.

  • Abot loss online Redo log group

    Hi,
    Is there different from recovering between loss CURRENT online redo log group and ACTIVE online redo log group?
    Both of them are needed to incomplete recovery, right?

    For CURRENT redolog recovery:
    startup mount
    recover database until cancel;
    alter database open resetlogs;
    For ACTIVE redolog recovery:
    If the database is still running, force a checkpoint by issuing the following command:
    alter system checkpoint;
    If above was successful and if the lost group has been archived then issue:
    alter database clear logfile group <number of the online redo log group>;
    And if the lost group has NOT been archived then issue:
    alter database clear logfile unarchived group <number of the online redo log group>;
    alter database open;
    If the database is not running (crashed) then
    startup mount
    recover database until cancel;
    alter database open resetlogs;
    Daljit Singh

  • Problem with Whole Database Online+Redo log Backup

    Dear Marcus Sir,
    I am facing while taking "Whole Database Online+Redo log Backup" through DB13 T-Code.
    Below is the "Problem part of the Backup log", however if you need I will send you full log.
    Hope you will find out problem soon
    #FILE..... /oracle/ANP/sapdata2/sr3_8/sr3.data8
    #SAVED.... sr3.data8  ANPB260810/12
    BR0280I BRBACKUP time stamp: 2010-08-27 11.03.22
    BR0063I 9 of 51 files processed - 19400.070 MB of 135986.469 MB done
    BR0204I Percentage done: 14.27%, estimated end time: 11:47
    BR0001I *******___________________________________________
    BR0202I Saving /oracle/ANP/sapdata2/sr3_9/sr3.data9
    BR0203I to /dev/rmt0.1 ...
    BR0278E Command output of 'LANG=C dd obs=1024K bs=1024K if=/oracle/ANP/sapdata2/sr3_9/sr3.data9 of=/dev/rmt0.1':
    dd read error: I/O error
    462+0 records in
    462+0 records out
    BR0280I BRBACKUP time stamp: 2010-08-27 11.03.36
    BR0279E Return code from 'LANG=C dd obs=1024K bs=1024K if=/oracle/ANP/sapdata2/sr3_9/sr3.data9 of=/dev/rmt0.1': 2
    BR0222E Copying /oracle/ANP/sapdata2/sr3_9/sr3.data9 to/from /dev/rmt0.1 failed due to previous errors
    BR0280I BRBACKUP time stamp: 2010-08-27 11.03.41
    BR0317I 'Alter tablespace PSAPSR3 end backup' successful
    BR0056I End of database backup: bedziydp.ant 2010-08-27 11.03.36
    BR0280I BRBACKUP time stamp: 2010-08-27 11.03.41
    BR0054I BRBACKUP terminated with errors
    Warm Regards
    Ahsan

    Hi,
    since you are getting a read error, it might as well be, that your datafile is defective.
    Try the same dd-command to /dev/null, to see if it is possible to read the entire file.
    First make sure that your null-device is existing, otherwise you might face a root-fs full problem.
    dd obs=1024K bs=1024K if=/oracle/ANP/sapdata2/sr3_9/sr3.data9 of=/dev/null
    or try a dbverify on it, which would also read the entire file and do a checksum test.
    brbackup -c -u / -m /oracle/ANP/sapdata2/sr3_9/sr3.data9 -t online -w only_dbv
    Good luck
    Volker

  • Online redo logs on a physical standby?

    A question on REDO logs on physical standby databases. (10.2.0.4 db on Windows 32bit)
    My PRIMARY has 3 ONLINE REDO groups, 2 members each, in ..ORADATA\LOCP10G
    My PHYSICAL STANDBY has 4 STANDBY REDO groups, 2 members each, in ..ORADATA\SBY10G
    I have shipping occurring from the primary in LGWR, ASYNC mode - max availablility
    However I notice the STANDBY also has ONLINE REDO logs, same as the PRIMARY, in the ..ORADATA\SBY10G folder
    According to the 10g Dataguard docs, section 2.5.1:
    "Physical standby databases do not use an online redo log, because physical standby databases are not opened for read/write I/O."
    I have tried to drop these on the STANDBY when not in apply mode, but I get the following:
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
    Database altered.
    SQL> ALTER DATABASE DROP LOGFILE GROUP 3;
    ALTER DATABASE DROP LOGFILE GROUP 3
    ERROR at line 1:
    ORA-01275: Operation DROP LOGFILE is not allowed if standby file management is
    automatic.
    I also deleted them while the STANDBY instance was idle, but it recreated them when moved to MOUNT mode.
    So my question is why is my PHYSICAL recreating and using these, if the docs say the shouldn't?
    I saw the same error mentioned here: prob. with DataGuard
    Is this a case of the STANDBY needing at least a notion of where the REDO logs will need to be should a failover occur, and if the files are already there, the standby database CONTROLFILE will hold onto them, as they are not doing any harm anyway?
    Or, is this a prooduct of having management=AUTOMATIC - i.e. the database will create these 'automatically'
    Ta
    bt

    According to the 10g Dataguard docs, section 2.5.1:
    "Physical standby databases do not use an online redo log, because physical standby databases are not opened for read/write I/O."yes, those are used when database is open.
    You should not perform any changes in Standby. Even if those exist online redo log files, whats the difficulty you have seen?
    These will be used whenever you performed switchover/failover. So nothing to worry on this.
    Is this a case of the STANDBY needing at least a notion of where the REDO logs will need to be should a failover occur, and if the files are already there, the standby database CONTROLFILE will hold onto them, as they are not doing any harm anyway?Then oracle functionality itself harm if you think in that way. When they not used in open then what the harm with that?
    Standby_File_management --> for example if you add any datafile, those information will be in archives/redos once they applied on standby those will be added automatically when it is set to AUTO if its manual, then it creates a unnamed file in $ORACLE_HOME/dbs location later you have to rename that file and recovery need to perform .
    check this http://docs.oracle.com/cd/B14117_01/server.101/b10755/initparams206.htm
    HTH.

  • Why do we need standby redo log on Primary database.

    Hi Gurus,
    I was going through the document in OBE,
    http://www.oracle.com/technology/obe/11gr1_db/ha/dataguard/physstby/physstdby.htm
    I have two queries:
    1) I noticed the statement -
    "Configure the primary database to receive redo data, by adding the standby logfiles to the primary. "
    Why do we have to create standby redo log on a primary database?
    2) There is another statement --
    "It is highly recommended that you have one more standby redo log group than you have online redo log groups as the primary database. The files must be the same size or larger than the primary database’s online redo logs. "
    Why do we need one additional standby redo log group than in Primary database.
    Could anyone please explain to me in simple words.
    Thanks
    Cherrish Vaidiyan

    Hi,
    1. Standby redo logs are used only when the database_role is standby, it is recommended to be added in primary also so that they can be used on role reversal, however during normal working standby redo logs will not be used at all on primary.
    2. In case of 3 online redo log groups, it is recommended to use 4 standby redo log group this is in case if log switching is happening frequently on primary and all 3 standby redo logs are still not completely archived on the standby and 4th can be used here as there will be some delay on standby due to network or slowness of arch on standby.
    Use of the standby redo log groups depends on the redo generation rate, you can see only 2 standby redo logs are getting used while you have 4 standby redo log groups, when the redo generation rate is less.
    So it is recommended to have one more standby redo log group when redo generation rate is high and all of the existing standby redo log group are getting used.
    Regards
    Anudeep

  • Physical Standby Online Redo log  files,

    Hi,
    I'm trying to create a physical standby database (10.2.0.3). I'm a little confused about the requirement for online redo logs on the standby.
    in my standby alert log I get the following when I issue:
    SQL> alter database recover managed standby database disconnect from session
    "ORA-00313: open failed for members of log group 1 of thread 1
    ORA-00312: online log 1 thread 1: '/appl/oradata/prod/prod_1_redo_01_02.log'
    ORA-27037: unable to obtain file status
    SVR4 Error: 2: No such file or directory
    Additional information: 3"
    /appl/oradata/prod/prod_1_redo_01_02.log is the path to the location of the online redo logs on the production system. This file does not exist on the standby filesystem so the error is correct.
    I assume that it gets this information from the standby control file I created on the production system and copied over to the standby.
    Do I need to copy the online redo logs from the primary over to the standby site or do I need to create online redo logs on the standby?
    Does the standby need to have redo log files?
    I'm not talking about 'standby log files' of the type created using 'alter database add standby log file'. I've not got that far yet.
    I just need to establish if a physical standby requires online redo log files?
    Thanks in advance,
    user234564

    I wanted to update this thread since I've been dealing with the exact same errors. The basic question is: "does a physical standby need the online redo logs?"
    Answer: Not really, until one wants to switchover or failover (and become a primary database). Furthermore, whenever the MRP process is started, Oracle prepares for a possible switchover/failover by "clearing" the online redo logs (MetaLink note# 352879.1). It is not a big deal, since Oracle will build the actual redo files when the "alter database open resetlogs" is accomplished during a "role transition."
    In our situation, we have decided to use our standby for nightly exports. We stop MRP, open the database read-only, then restart MRP. We built these standby DBs with RMAN. The RMAN duplicate process will not build the online redo log files until the database is opened for read/write (with resetlogs). However, we haven't had a need for read/write (i.e. a switchover).
    Thus, every morning we have been getting the same errors that "user234564" posted above. At first the errors seemed scary, then we realized they were just a nusiance. In order to clean things up, all I did was just "cp" our stanby redo logs (SRL) into our online redo directories ensuring the names matched what was in v$logfile. When I restarted MRP, the alert log clearly showed Oracle clearing these "newly found" online redo logs.

  • The file structure online redo log, archived redo log and standby redo log

    I have read some Oracle documentation for file structure and settings in Data Guard environment. But I still have some doubts. What is the best file structure or settings in Oracle 10.2.0.4 on UNIX for a data guard environment with 4 primary databases and 4 physical standby databases. Based on Oracle documents, there are 3 redo logs. They are: online redo logs, archived redo logs and standby redo logs. The basic settings are:
    1. Online redo logs --- This redo log must be on Primary database and logical standby database. But it is not necessary to be on physical standby database because physical standby is not open. It doesn't generate redo log. However, if don't set up online redo log on physical standby, when primary failover and switch standby as primary. How can standby perform without online redo logs? In my standby databases, online redo logs have been set up.
    2. Archived redo logs --- It is obviously that primary database, logical and physical standby database all need to have this log file being set up. Primary use it to archive log files and ship to standby. Standby use it to receive data from archived log and apply to database.
    3. Standby redo logs --- In the document, it says A standby redo log is similar to an online redo log, except that a standby redo log is used to store redo data received from another database. A standby redo log is required if you want to implement: The maximum protection and maximum availability levels of data protection and Real-time apply as well as Cascaded destinations. So it seems that this standby redo log only should be set up on standby database, not on primary database. Am my understanding correct? Because I review current redo log settings on my environment, I have found that Standby redo log directory and files have been set up on both primary and standby databases. I would like to get more information and education from experts. What is the best setting or structure on primary and standby database?

    FZheng:
    Thanks for your input. It is clear that we need 3 type of redo logs on both databases. You answer my question.
    But I have another one. In oracle ducument, it says If you have configured a standby redo log on one or more standby databases in the configuration, ensure the size of the current standby redo log file on each standby database exactly matches the size of the current online redo log file on the primary database. It says: At log switch time, if there are no available standby redo log files that match the size of the new current online redo log file on the primary database. The primary database will shut down
    My current one data gurard envirnment setting is: On primary DB, online redo log group size is 512M and standby redo log group size is 500M. On the standby DB, online redo log group size is 500M and standby redo log group size is 750M.
    This was setup by someone I don't know. Is this setting OK? or I should change Standby Redo Log on standby DB to 512M to exactly meatch with redo log size on primary?
    Edited by: 853153 on Jun 22, 2011 9:42 AM

  • Clearing Online redo logs on the target physical standby

    Hi,
    Version 11202.
    Primary on machine A
    Standby on machine B
    Following note: 11.2 Data Guard Physical Standby Switchover Best Practices using SQL*Plus [ID 1304939.1].
    Online redo logs on the target physical standby need to be cleared before that standby database can become a primary database. And later :
    On the target physical standby run the following query to determine if the online redo logs have not been cleared... 1) I did not understand where i should run the query. On machine A or on machine B ?
    2)
             Online redo logs on the target physical standby need to be CLEARED
            What does it mean that it need to be CLEARED ? Does transaction might be lost by running the clearing command?
    Thanks

    I have used my note many times in production.
    For example they needed to do some power work on the main server room a few months back on the weekend.
    We did switchovers until the work was complete and then a switch back.
    I wrote a short document called "Switchover post-mortem lessons" the main point from that was :
    1.
    getting ORA-01017 issues in Oracle forms (  Application ) after the switchover to standby.
    The issue was caused by the Standby database having a different parameter for passwords than the Primary database.
    This did not show up in testing because all the tester we used had converted passwords from Oracle 10.
    Solution
    When in doubt issue this on the new Primary :
    SQL>ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = FALSE;
    Note: This command can be issued repeatedly with no negative effect on the system.2.
    The query to check switch_over status was returning "LOG SWITCH GAP"
    select switchover_status from v$database;
    This is an issue because Oracle says the return values should be one of these :
    NOT ALLOWED
    SESSIONS ACTIVE
    SWITCHOVER PENDING
    SWITCHOVER LATENT
    TO PRIMARY
    TO STANDBY
    RECOVERY NEEDED
    LOG SWITCH GAP is not one of the expected value. In addition this phase is not search friendly either on the Oracle support site or your favorite search engine.
    Given this I ran this query :
    SELECT 
      NAME AS STANDBY,
      SEQUENCE#,
      APPLIED,
      COMPLETION_TIME
    FROM
      V$ARCHIVED_LOG;
    Solution
    SQL>ALTER SYSTEM SWITCH LOGFILE;
    And wait a few minutesMy switchover document had no issue.
    Best Regards
    mseberg

  • Online Redo logs instead of Standby Redo logs

    RDBMS Version: 11.2.0.3/Platform : RHEL 6.3
    To migrate a 3TB Database to a new DB server , we are going to use RMAN DUPLICATE.
    Step1. Take full backup of DB + Standby Control file at primary site and transfer the Bkp files to Standby site
    Step2. At standy site, we will run the RMAN duplicate target database for standby
    After the above step, we don't want to create the standby redo logs because the newly restored DB in standby server is going to be the new Prod DB which application will be pointing to.
    So, Can I skip the Standby Redo log creation part and create Online redo logs instead  ?
    As mentioned earlier, Our objective is not to create a proper Dataguard Standby DB setup. We just want to clone our DB to another server using RMAN Duplicate.

    Tom wrote:
    RDBMS Version: 11.2.0.3/Platform : RHEL 6.3
    To migrate a 3TB Database to a new DB server , we are going to use RMAN DUPLICATE.
    Step1. Take full backup of DB + Standby Control file at primary site and transfer the Bkp files to Standby site
    Step2. At standy site, we will run the RMAN duplicate target database for standby
    After the above step, we don't want to create the standby redo logs because the newly restored DB in standby server is going to be the new Prod DB which application will be pointing to.
    So, Can I skip the Standby Redo log creation part and create Online redo logs instead  ?
    As mentioned earlier, Our objective is not to create a proper Dataguard Standby DB setup. We just want to clone our DB to another server using RMAN Duplicate.
    Hi,
    Take full backup of DB + Standby Control
    We just want to clone our DB to another server using RMAN Duplicate
    If you want only clone database of production, why you  are take Standby controlfile?
    If you don't want create standby  database then, why you using DUPLICATE  command with FOR STANDBY option.
    You can  use DUPLICATE command for clone database, without for standby option.
    If you  say no, we want create standby database and we will perform swithover,
    then yes, you can use online redo  logs for max performance mode.
    and you can create standby redo logs on all database, but this redo logs will use by database when database role
    is standby.
    Regards
    Mahir M. Quluzade

  • Open database if an active online redo log is missing

    Hi,
    Sorry for the rather long post, but I specified all the steps I performed and couldn't make it shorter :-(
    I need an advice on how to open the database if an active online redo log is missing.
    For test purposes I intentionally performed a shutdown abort when the redo log group 1 was in active state and then renamed its only member (REDO01.LOG) so that the database couldn't perform crash recovery using it. Then upon startup I obviously got the message:
    ORA-00313: open failed for members of log group 1 of thread 1
    ORA-00312: online log 1 thread 1: 'H:\ORADATA\TESTDB\REDO01.LOG'
    ORA-27041: unable to open file
    OSD-04002: unable to open file
    O/S-Error: (OS 2) The system cannot find the file specified.Ok, so I checked the state of the logs:
    {noformat}
    SQL>SELECT a.GROUP#, first_change#, SEQUENCE#, a.status, SUBSTR(b.MEMBER, 1, 40) MEMBER, b.status mem_status, a.archived
      2    FROM v$log a, v$logfile b
      3   WHERE a.GROUP# = b.GROUP#
      4  ORDER BY a.GROUP#, b.MEMBER;
    GROUP# FIRST_CHANGE#  SEQUENCE# STATUS           MEMBER                         MEM_STA ARC
         1        592134         29 ACTIVE           H:\ORADATA\TESTDB\REDO01.LOG           YES
         2        592268         30 CURRENT          C:\ORADATA\TESTDB\REDO02.LOG           NO
         3        592129         28 ACTIVE           C:\ORADATA\TESTDB\REDO03.LOG           YES
    {noformat}Since opening the database to perform a log switch and thus change the status of the redo log group 1 from ACTIVE to INACTIVE to recreate the member isn't possible, I performed database recovery.
    SQL>recover database until cancel;
    ORA-00279: change 592129 generated at 02/04/2009 10:31:15 needed for thread 1
    ORA-00289: suggestion : C:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TESTDB\ARCHIVELOG\2009_02_04\O1_MF_1_28_%U_.ARC
    ORA-00280: change 592129 for thread 1 is in sequence #28
    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    ORA-00279: change 592134 generated at 02/04/2009 10:31:28 needed for thread 1
    ORA-00289: suggestion : C:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TESTDB\ARCHIVELOG\2009_02_04\O1_MF_1_29_%U_.ARC
    ORA-00280: change 592134 for thread 1 is in sequence #29
    ORA-00278: log file 'C:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TESTDB\ARCHIVELOG\2009_02_04\O1_MF_1_28_4RLR3JS9_.ARC' no longer needed for this rec
    overy
    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    'C:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TESTDB\ARCHIVELOG\2009_02_04\O1_MF_1_29_4RLR4MF3_.ARC'
    ORA-00279: change 592268 generated at 02/04/2009 10:32:03 needed for thread 1
    ORA-00289: suggestion : C:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TESTDB\ARCHIVELOG\2009_02_04\O1_MF_1_30_%U_.ARC
    ORA-00280: change 592268 for thread 1 is in sequence #30
    ORA-00278: log file 'C:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TESTDB\ARCHIVELOG\2009_02_04\O1_MF_1_29_4RLR4MF3_.ARC' no longer needed for this rec
    overy
    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    'C:\ORADATA\TESTDB\REDO02.LOG'
    Log applied.
    Media recovery complete.
    SQL>So for log sequence #28 I accepted the proposed archived redo log in the FRA, for sequence #29 (that's the online redo log that is missing!) I manually specified its archived copy, and for sequence #30 I specified the CURRENT online redo log. And as it seems the media recovery was successful.
    Next I tried to open the database but again got the error:
    SQL>alter database open noresetlogs;
    alter database open noresetlogs
    ERROR at line 1:
    ORA-00313: open failed for members of log group 1 of thread 1
    ORA-00312: online log 1 thread 1: 'H:\ORADATA\TESTDB\REDO01.LOG'
    ORA-27041: unable to open file
    OSD-04002: unable to open file
    O/S-Error: (OS 2) The system cannot find the file specified.
    The status of the log groups and its members is exactly as it was in the first query I wrote above, i.e. the redo log group 1 is still ACTIVE, so it's needed for crash recovery (which I had already done manually if I understand correctly how Oracle works!). I also checked if the datafiles are inconsistent (described in metalink doc id 1015544.102):
    SQL>SELECT DISTINCT CHECKPOINT_CHANGE#, FUZZY FROM V$DATAFILE_HEADER;
    CHECKPOINT_CHANGE# FUZ
                592269 NOSo, everything seems ok as far as datafile consistency is concerned.
    My question is: how can I rename/drop/clear/whatever the member of redo log group 1 to open the database?
    I tried to rename the log file member, to add another member to it, to open the database with resetlogs, to clear the logfile group 1, but all without success:
    1)
    SQL>alter database clear logfile group 1;
    alter database clear logfile group 1
    ERROR at line 1:
    ORA-01624: log 1 needed for crash recovery of instance testdb (thread 1)
    ORA-00312: online log 1 thread 1: 'H:\ORADATA\TESTDB\REDO01.LOG'
    2)
    SQL>alter database open resetlogs;
    alter database open resetlogs
    ERROR at line 1:
    ORA-01139: RESETLOGS option only valid after an incomplete database recovery
    3)
    SQL>alter database rename file 'H:\ORADATA\TESTDB\REDO01.LOG' to 'C:\ORADATA\TESTDB\REDO01.LOG';
    alter database rename file 'H:\ORADATA\TESTDB\REDO01.LOG' to 'C:\ORADATA\TESTDB\REDO01.LOG'
    ERROR at line 1:
    ORA-01511: error in renaming log/data files
    ORA-01512: error renaming log file H:\ORADATA\TESTDB\REDO01.LOG - new file C:\ORADATA\TESTDB\REDO01.LOG not found
    ORA-27041: unable to open file
    OSD-04002: unable to open file
    O/S-Error: (OS 2) The system cannot find the file specified.
    4)
    SQL>alter database add logfile member 'C:\ORADATA\TESTDB\REDO01.LOG' to group 1;
    alter database add logfile member 'C:\ORADATA\TESTDB\REDO01.LOG' to group 1
    ERROR at line 1:
    ORA-00313: open failed for members of log group 1 of thread 1
    ORA-00312: online log 1 thread 1: 'H:\ORADATA\TESTDB\REDO01.LOG'
    ORA-27041: unable to open file
    OSD-04002: unable to open file
    O/S-Error: (OS 2) The system cannot find the file specified.Sorry again for the long post and thank you in advance for any suggestion.
    Regards,
    Jure

    You could check if the recovery was complete by (re)creating the controlfile with the resetlogs option.
    <CREATE CONTROLFILE REUSE DATABASE define_db_name RESETLOGS NOARCHIVELOG
    ...>Thanks for the hint. If possible, could you only check if the steps I'm going to perform are ok.
    I did an "alter database backup controlfile to trace;" and then extracted the create controlfile definition part. So in essence I should run the following statements:
    CREATE CONTROLFILE REUSE DATABASE "TESTDB" RESETLOGS  ARCHIVELOG
        MAXLOGFILES 16
        MAXLOGMEMBERS 3
        MAXDATAFILES 100
        MAXINSTANCES 8
        MAXLOGHISTORY 292
    LOGFILE
      GROUP 1 'C:\ORADATA\TESTDB\REDO01.LOG'  SIZE 20M,
      GROUP 2 'C:\ORADATA\TESTDB\REDO02.LOG'  SIZE 20M,
      GROUP 3 'C:\ORADATA\TESTDB\REDO03.LOG'  SIZE 20M
    -- STANDBY LOGFILE
    DATAFILE
      'C:\ORACLE\PRODUCT\10.2.0\ORADATA\TESTDB\SYSTEM01.DBF',
      'C:\ORACLE\PRODUCT\10.2.0\ORADATA\TESTDB\UNDOTBS01.DBF',
      'C:\ORACLE\PRODUCT\10.2.0\ORADATA\TESTDB\SYSAUX01.DBF',
      'C:\ORACLE\PRODUCT\10.2.0\ORADATA\TESTDB\USERS01.DBF'
    CHARACTER SET EE8MSWIN1250
    ALTER DATABASE OPEN RESETLOGS;
    ALTER TABLESPACE TEMP ADD TEMPFILE 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\TESTDB\TEMP01.DBF' REUSE;Is that correct?
    About the RMAN backups: Wouldn't a 'CATALOG RECOVERY AREA' populate the controlfile with backup information again (I'm not using a recovery catalog in this case)?
    Thanks for the help!
    Regards,
    Jure

  • Size archive log different with online redo log

    Dear Experts,
    I had a problem with archive redo log size. I saw the size between archive redo log and online redo log is different.
    The online redo log on path /oracle/SID/origlogA/log_g17m1.dbf , the size is 280MB, but on archive log the size just 130MB.
    Why the size different? How to change the archive redo log?
    We are running with Oracle 11.2.0.4.
    Please aid me to solve this issue.
    Thanks
    Edy

    Hi,
    Yes, all of the size archive logs mismatch with online redolog.
    I tried dump the trace file using command "alter database backup control file to trace file" and here is the result:
    STARTUP NOMOUNT
    CREATE CONTROLFILE REUSE DATABASE "SID" NORESETLOGS  ARCHIVELOG
        MAXLOGFILES 255
        MAXLOGMEMBERS 3
        MAXDATAFILES 508
        MAXINSTANCES 50
        MAXLOGHISTORY 46720
    LOGFILE
      GROUP 5 (
        '/oracle/SID/origlogA/log_g15m1.dbf',
        '/oracle/SID/mirrlogA/log_g15m2.dbf'
      ) SIZE 280M BLOCKSIZE 512,
      GROUP 6 (
        '/oracle/SID/origlogB/log_g16m1.dbf',
        '/oracle/SID/mirrlogB/log_g16m2.dbf'
      ) SIZE 280M BLOCKSIZE 512,
      GROUP 7 (
        '/oracle/SID/origlogA/log_g17m1.dbf',
        '/oracle/SID/mirrlogA/log_g17m2.dbf'
      ) SIZE 280M BLOCKSIZE 512,
      GROUP 8 (
        '/oracle/SID/origlogB/log_g18m1.dbf',
        '/oracle/SID/mirrlogB/log_g18m2.dbf'
      ) SIZE 280M BLOCKSIZE 512
    -- STANDBY LOGFILE
    DATAFILE
    Output ommited
    Thanks
    Edy

  • Cold backup with online redo logs

    I am working on 10G in AIX for a single instance
    It is just a general db backup & restore question, but I have something confused.
    I am going to perform a cold backup with my ARCHIVELOG database.
    No wonder why I perform a cold backup because it is a testing database which can suffer from data lost and down time during backup.
    I read some guides. They all mentioned to backup all the datafiles and control files.
    During the restoration, I have to copy all the backed up datafiles and control files to the default location.
    Then Startup mount;
    The last step before open the database is recover database until cancel;
    For the acknowledgement, I have to do the command of recover database, because the online redo logs were not backed up, thus we have to recover it in order to reset the redo logs.
    For my question,Would I be able to skip the command of recover database, then directly startup the database if I have backed up the online redo logs and copy the default location during the restoration?
    However, I read many documents which mention that it is not suggested to backup the online redo logs. Is it just the case which ONLY applied in hot backup? Do you all think that for my case, cold backup for online redo logs is recommended?
    Thanks all

    jgarry wrote:
    Edit: And never forget, those test databases are some developers production.Absolutely true according to my experience. Loosing the work of a payed developer is just as bad as loosing the work of a production system and may even be worse because it may not be possible to re-enter missing data into the system.
    I think a cold backup is only suitable on special occasions, for instance, to relocate/copy the database to a different storage media, or if the database doesn't change or if loosing changes is absolutely irrelevant. Otherwise, put the database into archivelog mode and do a hot backup. After that you will also have alternative options which can make the restore and recovery of the database very easy and efficient, like flashback database, etc. but it will take substantial additional disk space.

Maybe you are looking for