ORA-00257 archiver error. Connect internal only, until freed
1. Change to oracle user:$su oracle2. Log in as sys user: $sqlplus sys/password as sysdba
3. Find out flash recovery area usage info, from where we can find the archive log space usage percent: SQL>select * from V$FLASH_RECOVERY_AREA_USAGE;
4. Caculate the space used by flash recovery area:SQL>select sum(percent_space_used)*3/100 from V$FLASH_RECOVERY_AREA_USAGE;
5. Show Archive log location: SQL>show parameter log_archive_dest;
6. Show recovery area location: SQL>show parameter recover;
7. Delete or move some old archive log files: SQL>rm -rf archive_log_2011_06_0*;
Notice: After step 7, we must use RMAN to maintain the control files, otherwise, the deletion changes can not be apply.
8. Log in as RMAN: SQL>rman target sys/password;
9. Find out unused archive log: SQL>crosscheck archive log all;
10. Delete expired archive log files: SQL>delete expired archivelog all;
11. Check the flash recovery area usage info again, make sure archive log files have been deleted: SQL>select * from V$FLASH_RECOVERY_AREA_USAGE;
12. Finally, increase the recovery file destination size: SQL>alter system set db_recovery_file_dest_size=3G scope=both;