ERROR:
ORA-00257: archiver error. Connect internal only, until freed.
(1) SQL> select * from v $ log;
GROUP # THREAD # SEQUENCE # bytes members arc status FIRST_CHANGE # FIRST_TIM
If all the arcs are found to be NO, the system cannot perform automatic archiving.
(3) manually switch logs
SQL> alter system switch logfile;
Alter system switch logfile
*
Row 3 has an error:
ORA-01013: user request to cancel current action
After waiting for a long time for no response, the operation is interrupted, and the manual switch log is not successful.
(4) view the alarm log file and find the error information that logs cannot be archived.
$ Tail-100 alert_devdb1.log
(5) SQL> select * from v $ recovery_file_dest;
The database application ASM is found to be archived for storage.
(6) SQL> select * from v $ flash_recovery_area_usage;
It is found that ARCHIVELOG PERCENT_SPACE_USED has exceeded 90%;
(7) You can use asmcmd to directly delete an archived log file. Then
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;
We recommend that you use RMAN for log backup and deletion. For more information, see http://download.oracle.com/docs/cd/b12037_01/server.101/b201734/rcmbackp.htm:
RMAN> backup archivelog all delete input;
Run the following command to back up logs and delete all logs generated a week ago:
Backup archivelog all;
Delete copy of archivelog all completed before 'sysdate-7 ';