ORA-00257 - Solucionado

Problema: ORA-00257: archiver error. Connect internal only, until freed.

Sintoma: Aceita apenas conexões internas e rejeita externas,

o banco está aberto, mas não aceita transações em razão de um redo log travado

1° - Shut a Database

SQL> SHUTDOWN IMMEDIATE;

ORACLE instance shut down.

2° - Start o banco em esta Mount (manutenção)

SQL> STARTUP MOUNT

ORACLE instance started.

Total System Global Area 1191182336 bytes

Fixed Size 2020320 bytes

Variable Size 318770208 bytes

Database Buffers 855638016 bytes

Redo Buffers 14753792 bytes

Database mounted.

3° (não execute) - Ocorrera o erro ao tentar "abrir" a database, ira mencionar que não

pode gravar o arquivo de redo.

SQL> ALTER DATABASE OPEN;

ALTER DATABASE OPEN

*

ERROR at line 1:

ORA-16038: log 1 sequence# 53 cannot be archived

ORA-19809: limit exceeded for recovery files

ORA-00312: online log 1 thread 1:

'/u01/app/oracle/product/10.2.0/oradata/desenvl/redo01.log'

4° - Veja o destino e se está em modo archive e veja que o espaço da Flash

Recovery Area está lotado, causa do problema.

SQL > SELECT * FROM V$RECOVERY_FILE_DEST;

NAME

--------------------------------------------------------------------------------

SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES

----------- ---------- ----------------- ---------------

/u01/app/oracle/product/10.2.0/flash_recovery_area/ 2147483648 2141670912 0 50

5° - Mude os archives antigo da Flash Recovery Area para outras pastas. E inicie o

RMAN.

$ rman target sys/senha@oracle_sid

6° - No RMAN valide os archives e apague os antigos.

RMAN > CROSSCHECK ARCHIVELOG ALL;

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: sid=280 devtype=DISK

RMAN > DELETE EXPIRED ARCHIVELOG ALL;

7° - Saia do RMAN e conectado na instância localmente altere o tamanho da Flash

Recovery Area.

RMAN > exit;

SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=4294967296 SCOPE=BOTH;

8° - Start o database, alterando o estado dele para 'OPEN'.

SQL> ALTER DATABASE OPEN;

Database altered

Pronto o Banco Volta a funcionar !!

E o Problema resolvido

Abraços!

Danilo Carvalho

Projetos Específicos? Nossa equipe está pronta pra atender com as melhores técnicas do mercado