Tuesday 4 August 2015

ORA-00257: archiver error.

error:ORA-00257: archiver error.

Question: I am running Oracle Apps and getting a ORA-00257 error:
ORA-00257: archiver error. Connect internal only, until freed.

Answer:  The oerr utility says this about the ORA-00257 error:
ORA-00257: archiver error. Connect internal only, until freed.

Cause: The archiver process received an error while trying to archive a redo log. If the problem is not resolved soon, the database will stop executing transactions. The most likely cause of this message is the destination device is out of space to store the redo log file.

Action: Check the archiver trace file for a detailed description of the problem. Also, verify that the device specified in the initialization parameterarchive_log_dest is set up properly for archiving.

The Oracle ARCH background process is responsible for taking the redo logs from the online redo log file system and writing them to the flat file

ORA-00257 is a common error in Oracle.  You will usually see ORA-00257 upon connecting to the database because you have encountered a maximum in the flash recovery area (FRA), or db_recovery_file_dest_size . 
First, make sure your automatic archiving is enabled.  To check the archive lo made, try:
SQL> archive log list;
Now, note thatyou can find archive destinations if you are using a destination ofUSE_DB_RECOVERY_FILE_DEST by:
SQL> show parameter db_recovery_file_dest;
The next step in resolving ORA-00257 is to find out what value is being used fordb_recovery_file_dest_size, use:
SQL> SELECT * FROM V$RECOVERY_FILE_DEST;
You may find that the SPACE_USED is the same as SPACE_LIMIT, if this is the case, to resolve ORA-00257 should be remedied by moving the archive logs to some other destination.

You next need to archive the log files by,

SQL> alter system archive log all;
It is important to note that within step five of the ORA-00257 resolution,  you may also encounter ORA-16020 in theLOG_ARCHIVE_MIN_SUCCEED_DEST, and you should use the proper archivelog path and use (keeping in mind that you may need to take extra measures if you are using Flash Recovery Area as you will receive more errors if you attempt to use LOG_ARCHIVE_DEST):
SQL>alter system set LOG_ARCHIVE_DEST_.. = 'location=/archivelogpath reopen';
The last step in resolving ORA-00257 is to change the logs for verification using:
SQL> alter system switch logfile;

No comments:

Post a Comment