How to set archive mode?


Two Questions on Redo Logs and Archive Redo Logs:

(1) On my instance, the log mode is ARCHIVE but the log_archive_start is
set to false.  The log files weren't being archived.  How is the ARCHIVE
mode and the log_archive_start parameter related and how can the mode be
ARCHIVE when it doesn't archive the log files automatically?

(2) Why on earth would anybody run in NOARCHIVEMODE and why is it the
default for the ORCL database?  Doesn't this mean you have to constantly
manually archive the log files yourself?  Is there a way to tell the log
files to overwrite themselves without needing to be archived?



Ans:

1 Suppose you have three redo logs. If you are running in NOARCHIVELOG as
soon as the third log has been filled, and a fourth file needs to be
created, it will overwrite the first online file, it will not backup the
original file.
If you run in ARCHIVELOG and log_archive_start is false, the database will
stop functioning.
In short, in NOARCHIVELOG the value of log_archive_start is irrelevant. In
ARCHIVELOG mode you shoudl always have log_archive_start true or issue ALTER
SYSTEM commands as soon as you need archiving to be done.

2 The only VALID reason is that you don't want creating the dictionary to be
logged, you can easily repeat it.
There are many invalid reasons 'O, this is a development system, and I can
afford to loose data, because there is a production system...' etc. Don't
believe those people. As soon as something happens they start screaming for
the DBA to recover the database and he can't because they wouldn't let him
the database run in ARCHIVELOG mode.
In NOARCHIVELOG you can't manually archive the log files!

Hth,

Sybrand Bakker, Oracle DBA
 

Hosted by www.Geocities.ws

1