Mensaje de error
ORA-00257:error del archivador. Conéctese solo internamente, hasta que se libere.
Según el error oerr ORA-00257 significa
ORA-00257:error del archivador. Conecte solo internamente, hasta que se libere. Causa:el proceso del archivador recibió un error al intentar archivar un registro de rehacer. Si el problema no se resuelve pronto, la base de datos dejará de ejecutar transacciones. La causa más probable de este mensaje es que el dispositivo de destino no tiene espacio para almacenar el archivo de registro de rehacer.
Acción:consulte el archivo de seguimiento del archivador para obtener una descripción detallada del problema. Además, verifique que el dispositivo especificado en el parámetro de inicialización archive_log_dest esté configurado correctamente para archivar.
¿Dónde ves este mensaje de error?
1) Verá a continuación el tipo de mensaje de error relacionado con el registro de alerta
Lo siguiente es algo de la información del registro de alertas:
Errors in file \u01\oracle\product\11.2.0\diag\rdbms\TEST\test\trace\test_arc1_1010.trc: ORA-19815: WARNING: db_recovery_file_dest_size of 21474836480 bytes is 100.00% used, and has 0 remaining bytes available.Wed jan 21 02:44:02 2016 ************************************************************************ You have following choices to free up space from flash recovery area: 1. Consider changing RMAN RETENTION POLICY. If you are using Data Guard, then consider changing RMAN ARCHIVELOG DELETION POLICY. 2. Back up files to tertiary device such as tape using RMAN BACKUP RECOVERY AREA command. 3. Add disk space and increase db_recovery_file_dest_size parameter to reflect the new space. 4. Delete unnecessary files using RMAN DELETE command. If an operating system command was used to delete files, then use RMAN CROSSCHECK and DELETE EXPIRED commands. ************************************************************************ ARC1: Failed to archive thread 1 sequence 1459 (1809) ARCH: Archival stopped, error occurred. Will continue retrying Wed jan 21 02:44:02 2016 Errors in file \u01\oracle\product\11.2.0\diag\rdbms\TEST\test\trace\test_arc1_1010.trc ORA-16038: log 3 sequence# 1459 cannot be archived ORA-19809: limit exceeded for recovery files ORA-00312: online log 3 thread 1: '\u01\oracle\oradata\TEST\redo03.LOG'
2) Si intenta iniciar sesión con un usuario que no es sysdba, aparecerá el siguiente mensaje de error
sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 - Production on Copyright (c) 1982, 2008, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> conn apps/apps ERROR: ORA-00257: archiver error. Connect internal only, until freed. Warning: You are no longer connected to ORACLE. SQL
3) Si intenta iniciar sesión con el usuario sysdba y verifica el evento de espera para la sesión, encontrará el evento de cambio de archivo de registro de sesión en espera
Por qué se produce el error ORA-00257
Este error ocurre cuando la ubicación de destino para el registro de archivo está llena o no está disponible. El proceso en segundo plano de Oracle ARCH es responsable de tomar los registros de rehacer del sistema de archivos de registro de rehacer en línea y escribirlos en el archivo plano que no puede escribir en el sistema de archivos
Cómo resolver los errores ORA-00257
1) En primer lugar, debemos encontrar el destino del registro de archivo para la base de datos
sqlplus / as sysdba SQL> archive log list;
también puede encontrar destinos de archivo mediante USE_DB_RECOVERY_FILE_DEST
SQL> show parameter db_recovery_file_dest;
Obtenga también el tamaño de db_recovery_file_dest
show parameter db_recovery_file_dest_size;
2) El siguiente paso para resolver ORA-00257 es averiguar qué valor se está utilizando para db_recovery_file_dest_size, use:
SQL> SELECT * FROM V$RECOVERY_FILE_DEST;
Puede encontrar que SPACE_USED es lo mismo que SPACE_LIMIT, si este es el caso, para resolver ORA-00257 debe remediarse moviendo los registros de archivo a algún otro destino.
SQL> SELECT * FROM V$RECOVERY_FILE_DEST; NAME SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES +FLASH 21474836480 21474836480 212428800 200
3) Podemos tener muchas soluciones en esta situación
a) Aumente el tamaño de db_recovery_file_dest si tiene espacio disponible en Oracle ASM o en el sistema de archivos que esté usando
alter system set db_recovery_file_dest_size=40g;
b) Podemos eliminar el registro de archivo del que ya se ha realizado una copia de seguridad
rman target / delete archivelog UNTIL TIME = 'SYSDATE-1' backed up 1 times to sbt_tape;rman target / RMAN>delete archivelog until time 'SYSDATE-3'; or, RMAN>delete archivelog all; or delete archivelog UNTIL TIME = 'SYSDATE-1.5' backed up 1 times to sbt_tape;
c) Si no ha realizado la copia de seguridad, se recomienda realizar una copia de seguridad y luego eliminar los archivos de registro del archivo
rman target /run { allocate channel d1 type disk; backup archivelog all delete input format '/u11/ora/arch_%d_%u_%s'; release channel d1; }
d) A veces, la pieza de copia de seguridad antigua, los registros de flashback pueden estar ocupando espacio en db_recovery_file_dest, verifique el contenido de db_recovery_file_dest
SQL>Select file_type, percent_space_used as used,percent_space_reclaimable as reclaimable, number_of_files as "number" from v$flash_recovery_area_usage;FILE_TYPE USED RECLAIMABLE number ------------ ---------- ----------- ---------- CONTROLFILE 0 0 0 ONLINELOG 0 0 0 ARCHIVELOG 4.77 0 2 BACKUPPIECE 56.80 0 10 IMAGECOPY 0 0 0 FLASHBACKLOG 11.68 11.49 63
A veces, el antiguo punto de restauración garantizado puede estar presente, Dropping liberará el espacio.
Base de datos Flashback explicada y limitación
cómo Flashback cuando tenemos protección de datos
Las 10 consultas más útiles para la base de datos Flashback
e) Si no necesitamos el registro de archivo, simplemente eliminar también servirá para el propósito
rman target / DELETE NOPROMPT ARCHIVELOG ALL;
Otro comando útil en este caso
LIST COPY OF ARCHIVELOG ALL COMPLETED AFTER 'SYSDATE-1'; DELETE NOPROMPT BACKUP COMPLETED BEFORE 'SYSDATE-4'; LIST COPY OF ARCHIVELOG UNTIL TIME = 'SYSDATE-18'; BACKUP ARCHIVELOG COMPLETION TIME BETWEEN 'SYSDATE-28' AND 'SYSDATE-7';
Nota importante
No elimine manualmente el archivo de registro del archivo del sistema de archivos, no actualizará el archivo de control y no solucionará el problema. Luego, debe verificar todo en rman y eliminar obsoletos y caducados
f) Podemos especificar una ruta alternativa para archivar
El archivado se realiza automáticamente en el destino alternativo2
log_archive_dest_1='LOCATION=use_db_recovery_file_dest NOREOPEN ALTERNATE=LOG_ARCHIVE_DEST_2' log_archive_dest_2='LOCATION=/other_dest_for_archiving' log_archive_dest_state_1='enable' log_archive_dest_state_2='alternate' db_recovery_file_dest='/u01/app/oradata/flash_recovery_area' db_recovery_file_dest_size=200G
4) Una vez que haya espacio disponible en db_recovery_file_dest, verifique el sistema alterando el archivo de registro del cambio del sistema
alter system switch logfile; system alerted
También intente conectarse con un usuario que no sea sysdba para asegurarse de que el problema esté resuelto
sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 - Production on Copyright (c) 1982, 2008, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> conn apps/apps connected SQL>
Es aconsejable realizar una copia de seguridad periódica del registro de archivos y eliminarlos. Deberíamos poner un script de monitoreo para controlar el espacio del área de recuperación flash.
Artículos relacionadosORA-00936 expresión faltante
ORA-01017:nombre de usuario/contraseña no válidos; inicio de sesión denegado
ORA-29913 con tablas externas
ora-00904 identificador no válido
ORA-00001 restricción única violada
ORA-01111 en MRP
Cómo encontrar el historial de registro de archivo
RMAN-06059:No se encontró el registro archivado esperado, la pérdida del registro archivado compromete la capacidad de recuperación