Redo log files in case of NOARCHIVELOG Mode.

Question is related with the oracle architure..
database requires a minimum of two redo log files to guarantee that one is always available for writing while the other is being archived, this sounds perfect when DB is running in ARCHIVELOG mode but at the same time it also forces database to have 2 redo log files even when the DB is running in NOARCHIVELOG mode?
Any particular reason..
I would look for reasons not answers on what redo log is and what information it holds etc..

pgoel wrote:
If you had only one file all further changes would have to stop until all changed data blocks had been written to disc. By insisting on a minimum of two log files Oracle can allow the log writer to fill the second log file as the database writer writes out the dirty blocks covered by changes desrcibed in the first log file.What about having a big size redo log file instead of two? Checkppoint being initiated when the redo log file is half filled
I mean, understand the logic, two is better, even best.. but still not getting convinced. I am just trying to think, can not Oracle work with 1 group with 1 big file..specailly when Noarch mode ? Having
Edited by: pgoel on Mar 12, 2011 7:27 PMNo, you still didn't understand and I am not sure how else we can say it. Okay, think about log groups as two buckets which are used to fill the redo content. The LGWR is filling one bucket at a time till it can't accept any more content. Once filled, rather than spilling the content out, it jumps over to the second bucket. Now, taking your statement of big sized redo, Pgoel, it doesn't matter how big sized bucket you bring in, eventually it will fill in. Its not possible that you wont be able to fill it , it just would take more longer than the normal timings. Thats all. So in any case , you need the second bucket. And I am not sure that why you are struck on the archivelog mode. I hope you do understand that its an optional mode. This means, this may or may not be there. If there, its a good thing that before doing the flush of the redo content, Oracle would be able to save the contents in the archived (think about the name, it's very meaning is to preserve, to archive) log file. If not, the redo content wuold be lost and there won't be any record of transactions leaving you to reenter the lost transactions. Its a meaningless point on which you are struck i.e. the archive or no-archivelog mode. Be it whatever, Oracle would still need minimum of the two log groups.
HTH
Aman....

Similar Messages

  • Redo log in case of NOARCHIVELOG Mode.

    ================================================
    This post is now available at .. Redo log files in case of NOARCHIVELOG Mode.
    ================================================
    Question is related with the oracle architure..
    database requires a minimum of two redo log files to guarantee that one is always available for writing while the other is being archived, this sounds perfect when DB is running in ARCHIVELOG mode but at the same time it also forces database to have 2 redo log files even when the DB is running in NOARCHIVELOG mode?
    Any particular reason..
    I would look for reasons not answers on what redo log is and what information it holds etc..
    Edited by: pgoel on Mar 12, 2011 4:04 PM

    ======================================
    SORRY, WRONG FORUM moving it to the corrent forum
    ======================================
    Edited by: pgoel on Mar 12, 2011 4:01 PM

  • Restore in noarchivelog mode ( redo log files have been dropped )

    1, A full backup taken using RMAN is available on disk.
    2, The current control files were NOT damaged and do not need to be restored.
    3, All data files are damaged .
    4, The database is in NOARCHIVELOG mode.
    I restore database :
    1. RMAN> STARTUP MOUNT
    2. RMAN> RESTORE DATABASE;
    3. RMAN> recover database;
    in this step , I got the information about needing redo log files ; but the redo log
    files have been dropped , what should i do ?
    else
    I want to know there is the command 'recover database using backup control file'
    in rman or not ?
    Tks

    Possibly loss of data (because information in online redo logs is lost):
    recover database until cancel;
    (cancel immediately)
    alter database open resetlogs; (to build a new set of redo logs)
    It's not necessary to use a backup controlfile here.

  • Db restore non archive mode lost redo log file..restore from controlfile tr

    i have a db 11g I had taken non archive backup but failed to take redo log files backup...
    so while i restored the db ... after formatting the machine ..the oracle instance wont start.
    I create a controlfile trace but when i run it i get errors.
    since i dont have the older log files.. how do i get around with this issue
    Thanks
    Following is the sample of control file trace ..Note i cannot create the redo log file
    since db wont be mounted at most it shall be in nonmount mode
    and below is my created controlfile ....
    CREATE CONTROLFILE REUSE DATABASE "XE" NORESETLOGS NOARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
    LOGFILE
    GROUP 1
    'C:\ORACLEXE\APP\ORACLE\FLASH_RECOVERY_AREA\XE\ONLINELOG\O1_MF_1_80L7C259_.LOG'
    SIZE 50M BLOCKSIZE 512,
    GROUP 2
    'C:\ORACLEXE\APP\ORACLE\FLASH_RECOVERY_AREA\XE\ONLINELOG\O1_MF_2_80L7C375_.LOG'
    SIZE 50M BLOCKSIZE 512
    -- STANDBY LOGFILE
    DATAFILE
    'C:\ORACLEXE\APP\ORACLE\ORADATA\XE\SYSTEM.DBF',
    'C:\ORACLEXE\APP\ORACLE\ORADATA\XE\UNDOTBS1.DBF',
    'C:\ORACLEXE\APP\ORACLE\ORADATA\XE\SYSAUX.DBF',
    'C:\ORACLEXE\APP\ORACLE\ORADATA\XE\USERS.DBF'
    CHARACTER SET AL32UTF8
    I dont have these 2 files ..what do i do to get around this situation
    'C:\ORACLEXE\APP\ORACLE\FLASH_RECOVERY_AREA\XE\ONLINELOG\O1_MF_1_80L7C259_.LOG'
    SIZE 50M BLOCKSIZE 512,
    GROUP 2
    'C:\ORACLEXE\APP\ORACLE\FLASH_RECOVERY_AREA\XE\ONLINELOG\O1_MF_2_80L7C375_.LOG'
    SIZE 50M BLOCKSIZE 512
    -- STANDBY LOGFILE
    DATAFILE
    Edited by: zycoz100 on Feb 27, 2013 10:57 PM

    If you have a cold backup (database shutdown properly) without the redo logs, change this :
    CREATE CONTROLFILE REUSE DATABASE "XE" NORESETLOGS NOARCHIVELOGto
    CREATE CONTROLFILE REUSE DATABASE "XE" RESETLOGS NOARCHIVELOGYou have to change the NORESETLOGS to RESETLOGS for Oracle to recreate the online redo logs.
    Hemant K Chitale

  • Database in log archive mode and redo log file in mode not archive

    Hello,
    I have a dabatabase running in archive log mode, recently changed, I have 5 redo log groups and one of them (the current one) shows in the v$log view, that ARC: NO, I mean, no archiving. All redo logs except it shows ARC:Yes
    What does it mean?
    Am I going to have problems with this redo log file?
    Thanks

    If you do describe on v$log, you'll find that the full column name is Archived (meaning is it archived yet?).
    You could try alter system switch logfile and then check v$log again a few times after.
    Use the docu for finding out more about v$ views and so on
    http://www.oracle.com/pls/db102/print_hit_summary?search_string=v%24log

  • How to recover from one corrupted redo log file in NOARCHIVE mode?

    Oracle 10.2.1.
    The redo log file was corrupted and Oracle can't work.
    When I use STARTUP mount, I got no error msg.
    SQL> startup mount
    ORACLE instance started.
    Total System Global Area 1652555776 bytes
    Fixed Size 1251680 bytes
    Variable Size 301991584 bytes
    Database Buffers 1342177280 bytes
    Redo Buffers 7135232 bytes
    Database mounted.
    But I have some applications which are depended on Oracle can't be started.
    So, I tried STARTUP open. But I got error msg.
    SQL> startup open
    ORACLE instance started.
    Total System Global Area 1652555776 bytes
    Fixed Size 1251680 bytes
    Variable Size 301991584 bytes
    Database Buffers 1342177280 bytes
    Redo Buffers 7135232 bytes
    Database mounted.
    ORA-00368: checksum error in redo log block
    ORA-00353: log corruption near block 497019 change 42069302 time 11/07/2007
    23:43:09
    ORA-00312: online log 4 thread 1:
    'G:\ORACLE\PRODUCT\10.2.0\ORADATA\NMDATA\REDO04.LOG'
    So, how can I restore and recover my database?
    If use RMAN, how to do that?
    Any help will be appreciated.
    Thanks.

    Hi, Yingkuan,
    Thanks for the helps.
    Actually, I have 10 redo log files exists. All of them are here.
    I tried your suggestion:
    alter database clear unarchived logfile group 4;
    The error msg I got is the same as before:
    SQL> alter database clear unarchived logfile group 4;
    alter database clear unarchived logfile group 4
    ERROR at line 1:
    ORA-01624: log 4 needed for crash recovery of instance nmdata (thread 1)
    ORA-00312: online log 4 thread 1:
    'G:\ORACLE\PRODUCT\10.2.0\ORADATA\NMDATA\REDO04.LOG'
    Compared to losing all the data, it is OK for me lose some of them.
    I have more than 1 TB data stored and 99.9% of them are raster images.
    The loading of these data were the headache. If I can save them, I can bear the lost.
    I want to grasp the last straw.
    But I don't know how set the parameter: allowresetlogs_corruption
    I got the error msg:
    SQL> set allowresetlogs_corruption=true;
    SP2-0735: unknown SET option beginning "_allow_res..."
    I have run the command:
    Recover database until cancel
    Alter database open resetlogs
    The error msg I got is the following:
    SQL> recover database until cancel
    ORA-00279: change 41902930 generated at 11/05/2007 22:01:48 needed for thread 1
    ORA-00289: suggestion :
    D:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\NMDATA\ARCHIVELOG\2007_11_09\O1_MF_
    1_1274_%U_.ARC
    ORA-00280: change 41902930 for thread 1 is in sequence #1274
    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    cancel
    ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
    ORA-01194: file 1 needs more recovery to be consistent
    ORA-01110: data file 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\NMDATA\SYSTEM01.DBF'
    ORA-01112: media recovery not started
    SQL>
    From the log file, I got the following:
    ALTER DATABASE RECOVER database until cancel
    Fri Nov 09 00:12:48 2007
    Media Recovery Start
    parallel recovery started with 2 processes
    ORA-279 signalled during: ALTER DATABASE RECOVER database until cancel ...
    Fri Nov 09 00:13:20 2007
    ALTER DATABASE RECOVER CANCEL
    Fri Nov 09 00:13:21 2007
    ORA-1547 signalled during: ALTER DATABASE RECOVER CANCEL ...
    Fri Nov 09 00:13:21 2007
    ALTER DATABASE RECOVER CANCEL
    ORA-1112 signalled during: ALTER DATABASE RECOVER CANCEL ...
    Thank you very much. and I am looking forward to your followup input.

  • Removing Redo Log Files? What's Normal?

    Hello,
    I'm new to Oracle and I've been using Informix for years. We currently have Oracle 9.2 running on Windows 2000 Server machine and apparently the redo log files keep filling up the disk drives they reside on. This is happening about every two weeks since we go out and delete the files when we remember.
    My question is does Oracle have a "normal" way of removing old redo logs automatically rather than having to remove them manually? In the Informix world I can set the logical logs so that they write over previously used logs once they are no longer used. Is there a similar way to configure Oracle?
    Thanks for helping out.
    Gregg Walker

    Do not delete your old log files: you need them.
    That's how Oracle does recovery when you lose a datafile or a drive. You copy over the missing stuff from your back-up and then Oracle re-applies the chnages from the REDO logs thereby bringing your database back up to date. No work lost. Result!
    Of course, if you don't take up a backup then holding on to REDO logs is pointless. In which case, set the database to run in NOARCHIVELOG mode.
    However, I strongly advise you to run in ARCHIVELOG mode. You may find this part of the administrator's guide informative: http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96521/archredo.htm#4553
    Cheers, APC

  • Oracle 10g R2 Database Redo Log Files

    I had 3 redo log files, each of size 50 MB. i added 3 more redo log files, each of size 250 MB.
    Database is running in archive mode, files are generating with different sizes like 44 MB and 240 MB, i need to know is this harm for database or not?
    to make all archive redo log files generation of equal size what should i do?
    Please guide

    Waheed,
    When the redo log switch willbe happening,oracle would be asking archiver to log that into the archive file.So in case you have any parameters set to make the switch happen at certain time,depending on the activity of teh database,the archive file size may vary.There is no harm wit the different sizes of the files.What matters is the transaction informaiton contained in them not their size.
    to make all archive redo log files generation of equal size what should i do?
    As mentioned by Syed, you can make the switch happen at a defined interval which will not ensure but still will be a step to make the archive files of the same size.But I shall say you should bother more about making sure that the files are available rather than their size.
    Aman....

  • Delete old and unused Archived Redo Log Files

    Hello forum!
    My db was in ARCHIVELOG mode and It created 9GB of archived redo log files.
    Now I put the db in NOARCHIVELOG mode, can I delete all the ARLF? am I sure that the DB never need those files in the future?
    If yes, how can I delete them? I will use 'del' operative system command?
    In addition, I found this command:
    SQL>alter database open resetlogs;
    is it useful for my purpose?
    thank you!

    You are safe to remove those archivelog files if you altered your database to no archive log mode. Just remove them from OS level
    Please bear in mind that database in no archivelog mode will lost data in the event of disaster.
    SQL>alter database open resetlogs;Doesn't help in your situation, it's use to bring up database after incomplete recovery.

  • Need to understand when  redo log files content  is wrote to datafiles

    Hi all
    I have a question about the time when redo log files are wrote to the datafiles
    supposing that the database is in NOARCHIVELOG mode, and all redo log files are filled, the official oracle database documentation says that: *a filled redo log file is available
    after the changes recorded in it have been written to the datafiles* witch mean that we just need to have all the redo log files filled to "*commit*" changes to the database
    Thanks for help
    Edited by: rachid on Sep 26, 2012 5:05 PM

    rachid wrote:
    the official oracle database documentation says that: a filled redo log file is available after the changes recorded in it have been written to the datafiles It helps if you include a URL to the page where you found this quote (if you were using the online html manuals).
    The wording is poor and should be modified to something like:
    <blockquote>
    +"a filled online redo log file is available for re-use after all the data blocks that have been changed by change vectors recorded in the log file have been written to the data files"+
    </blockquote>
    Remember if a data block that is NOT an undo block has been changed by a transaction, then an UNDO block has been changed at the same time, and both change vectors will be in the redo log file. The redo log file cannot, therefore, be re-used until the data block and the associated UNDO block have been written to disc. The change to the data block can thus be rolled back (uncommitted changes can be written to data files) because the UNDO is also available on disc if needed.
    If you find the manuals too fragmented to follow you may find that my book, Oracle Core, offers a narrative description that is easier to comprehend.
    Regards
    Jonathan Lewis
    http://jonathanlewis.wordpress.com
    Author: <b><em>Oracle Core</em></b>

  • Stale status of Redo log files...

    Hi ,
    Why in the following sql results , the log file situated in group#3 is not stale as it is not currently used.....????
    SQL> select * from v$log;
        GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
             1          1        485   52428800          1 NO       CURRENT               14310098 17/05/2007
             2          1        483   52428800          1 NO       INACTIVE              14265944 16/05/2007
             3          1        484   52428800          1 NO       INACTIVE              14292318 17/05/2007
    SQL>
    SQL> select * from V$LOGFILE;
        GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE
             3         ONLINE  C:\ORACLE\PRODUCT\10.2.0\ORADATA\EPESY\REDO03.LOG                                NO
             2 STALE   ONLINE  C:\ORACLE\PRODUCT\10.2.0\ORADATA\EPESY\REDO02.LOG                                NO
             1         ONLINE  C:\ORACLE\PRODUCT\10.2.0\ORADATA\EPESY\REDO01.LOG                                NONOTE : I use Oracle 10g v.2 on WinXp platform. The database is running in NOARCHIVELOG mode.
    Many thanks,
    Simon

    The normal status is null (File is in use).
    The stale status indicates a 'problem', as documentation part below:
    A redo log file becomes INVALID if the database cannot access it. It becomes STALE if the database suspects that it is not complete or correct. A stale log file becomes valid again the next time its group is made the active group.

  • Manual archiving of redo log files....

    Hi ,
    If the database is running in NOARCHIVELOG mode , is it possible to archive the redo log files manually.... and how..????
    Note: I use Oracle 10g v.2
    Many thanks,
    Simon

    Having issued the command , i noticed that the USE_DB_RECOVERY_FILE_DEST is the destination of LOG_ARCHIVE_DEST_10:
    SQL> select dest_id,dest_name,status,destination from V$ARCHIVE_DEST;
       DEST_ID DEST_NAME                                                                        STATUS    DESTINATION
             1 LOG_ARCHIVE_DEST_1                                                               VALID     C:\oracle\product\10.2.0\flash_recovery_area\EPESY\ARCHIVELOG\
             2 LOG_ARCHIVE_DEST_2                                                               INACTIVE 
             3 LOG_ARCHIVE_DEST_3                                                               INACTIVE 
             4 LOG_ARCHIVE_DEST_4                                                               INACTIVE 
             5 LOG_ARCHIVE_DEST_5                                                               INACTIVE 
             6 LOG_ARCHIVE_DEST_6                                                               INACTIVE 
             7 LOG_ARCHIVE_DEST_7                                                               INACTIVE 
             8 LOG_ARCHIVE_DEST_8                                                               INACTIVE 
             9 LOG_ARCHIVE_DEST_9                                                               INACTIVE 
            10 LOG_ARCHIVE_DEST_10                                                              VALID     USE_DB_RECOVERY_FILE_DESTBut... i have set the LOG_ARCHIVE_DEST parameter not ...._10.
    How the system will point to the directory i've set in my previous alter system command...- when i use the archive log list???
    Many thanks,
    Simon

  • Filled redo log files are available to LGWR for reuse

    Hi,
    Oracle version:
    Oracle Database 10g Release 10.2.0.4.0 -
    OS:Windows XP
    In oracle documentation it is mentioned that:
    Filled redo log files are available to LGWR for reuse depending on whether archiving is enabled.
    *> If archiving is disabled (the database is in NOARCHIVELOG mode), a filled redo log file is available after the changes recorded in it have been written to the datafiles*.
    Link for Documentation is:
    http://docs.oracle.com/cd/B28359_01/server.111/b28310/onlineredo001.htm
    My doubt is:
    Redo Records are written to datafiles also??

    user12141893 wrote:
    Does it mean:
    Suppose:
    Online redo log files contains some redo entries and database buffer cache contains some data and this data belong to redo entries of redo log files.
    Now this redo log file can't be reused until those (related) blocks of database buffer cache are written into datafiles.
    This is sort of correct. If the log file would be filled up , LGWR would switch over to the next log group and would initiate a Log Switch which would further trigger DBWR to start checkpointing the content protected by this log group to the data file. By the time this operation would be going on, the Log group's members would have the status of Active and once it would be complete, the status would be marked to Inactive which means that this log group and its members can be reused by LGWR.
    HTH
    Aman....

  • Current redo log file is lost

    Hi All,
    I got a scenario in which my current redo log file is lost:
    Do I need to:
    1)Clear log file group
    (or)
    2)I should perform incomplete recovery.
    What are the steps I should follow to recover this current redo log file?
    1)*If it is inactive* I can make use of
    ALTER DATABASE CLEAR LOGFILE UNARCHIVED GROUP 2;
    which will drop and recreate the log file.To recover from loss of an active online log group in NOARCHIVELOG mode:
    If the media failure is temporary, then correct the problem so that the database can reuse the group when required.
    Restore the database from a consistent, whole database backup (datafiles and control files) as described in "Restoring Datafiles Before Performing Incomplete Recovery". For example, enter:
    % cp /disk2/backup/*.dbf $ORACLE_HOME/oradata/trgt/
    Mount the database:
    STARTUP MOUNT
    Because online redo logs are not backed up, you cannot restore them with the datafiles and control files. In order to allow the database to reset the online redo logs, you must first mimic incomplete recovery:
    RECOVER DATABASE UNTIL CANCEL
    CANCEL
    Open the database using the RESETLOGS option:
    ALTER DATABASE OPEN RESETLOGS;
    Shut down the database consistently. For example, enter:
    SHUTDOWN IMMEDIATE
    Make a whole database backup.
    To recover from loss of an active online redo log group in ARCHIVELOG mode:
    If the media failure is temporary, then correct the problem so that the database can reuse the group when required. If the media failure is not temporary, then use the following procedure.
    Begin incomplete media recovery, recovering up through the log before the damaged log.
    Ensure that the current name of the lost redo log can be used for a newly created file. If not, then rename the members of the damaged online redo log group to a new location. For example, enter:
    ALTER DATABASE RENAME FILE "?/oradata/trgt/redo01.log" TO "/tmp/redo01.log";
    ALTER DATABASE RENAME FILE "?/oradata/trgt/redo01.log" TO "/tmp/redo02.log";
    Open the database using the RESETLOGS option:
    ALTER DATABASE OPEN RESETLOGS;
    My question is when the redo log file is current. What steps we should follow?
    Best regards,
    Rafi.
    http://rafioracledba.blogspot.com/
    2)If it is active then I can make use of below steps:

    Rafi (Oracle DBA) wrote:
    Hi Asif,
    This link I have seen by refering to previous post.I just have a slight doubt in mind.
    1)Do I need to make use of statement:
    Alter database clear unarchived log file group#;
    (or)
    Only if your group is current(or you are not able to drop it) and is not archived then you should use above query.
    We should perform incomplete recovery for this.If we have to perform incomplete recovery what are the steps I should follow?
    I doubt you should be performing incomplete recovery for this.
    Eg:Let us say my group 1 is dropped it has only one member and it is in active state.How to recover database?Can I get the steps?
    You would not be able to drop it if it is in active state, did you meant it is corrupted? If yes then you can use below query
    Alter database clear [unarchived] LOGFILE GROUP #;>
    Best regards,
    Rafi
    http://rafioracledba.blogspot.com/
    Make sure to backup your database after above activity.
    Regards
    Anurag

  • How to change the redo log file location.... ?

    I want all my redo log files to be created in \u10 instead of current /u01?
    How to do it? NOARCHIVELOG mode database on Oracle 10g R2.
    Thank you,
    Smirh

    Hi..
    I want all my redo log files to be created in \u10 instead of current /u01?I think it should be /u10 :)...
    Anand
    Edited by: Anand... on Nov 5, 2009 5:32 AM Removed the misinformation about downtime

Maybe you are looking for

  • Resolution of built-in display with dvi adapter

    I've connected my Imac to my Samsung DLP using a mini-dvi to s-video adapter. The display on the tv is fine, but the problem is that when ever the adapter is plugged in, I lose all widescreen resolutions for the built-in display. Does anyone know a w

  • Apps not working after updating to iOS 5.1.1

    I just updated the iOS 5.1.1 on my 4s last night and all my downloaded apps couldn't be opened (the original apps working porperly). They seem to be running because they are on the running apps bar when I double click the menu botton. Does anyone hav

  • Clearing document and offseting document

    Dear expert, Would like to seek for your advise, why clearing document with status clearing had no line item appear/posted in the document and document type DL-AR Bill offset with document status A=clearing document also do not had line item in the d

  • HT4993 how much to repair a broken screen on my iphone 4s

    Only had this phone for one month and broke the screen...what's the best way to go about Reparing?

  • Explaining the explain plan

    Hi all, 10.2.0.1 I have this explain plan: PLAN_TABLE_OUTPUT Plan hash value: 1154125190 | Id  | Operation                      | Name       | Rows  | Bytes | Cost (%CPU)| Time     | |   0 | SELECT STATEMENT               |            |     7 |   959