No passado : quando tive o erro ORA-00257: Archiver error
, resolvi-o usando o comando RMAN:
rman target sys/1234
delete archivelog all;
Desta vez , quando tento me conectar ao destino rman :
rman target sys/1234
Eu recebo o erro:
RMAN-00554: initialization of internal recovery manager packagefailed.
RMAN-04005: error from target database.
ORA-28001:the password has expired.
Quando tento me conectar com o sqlplus como sys SYSDBA , gera o seguinte erro: ERRO:
ORA-28001: the password has expired
Changing password for SYS
New password:
Quando digito a nova senha , o erro que aparece é:
ORA-00257: Archiver error. Connect AS SYSDBA only until resolved.
Então o problema é que..
- Quando me conecto através do sqlplus como sys SYSDBA, não consigo alterar a senha expirada do sys por causa do archivelog RMAN.
- Quando tento corrigir o erro do RMAN, não consigo me conectar ao RMAN devido à senha sys expirada.
Como posso resolver isso?
Seu problema fundamental - o do Archiver - é que você ficou sem espaço em disco .
O Archiver tem uma tarefa simples - pegar um arquivo de redo log online que esteja cheio e gravar seu conteúdo em um arquivo de redo log arquivado (ArchiveLog), liberando assim o arquivo de redo log online para aceitar futuras alterações.
Quando o Archiver não consegue fazer isso - por falta de espaço em disco - ele para e, como resultado, para todo o Banco de Dados também porque o Banco de Dados não aceitará nenhuma alteração que não possa anotar (em Refazer).
Conecte SYS como SYSDBA:
Se você já estiver logado no sistema operacional do servidor de banco de dados, poderá fazer login sem uma senha, supondo que você possa executar comandos como proprietário do software Oracle e tenha o parâmetro de ambiente ORACLE_SID definido:
ou
Se você estiver se conectando pela rede:
ou
A credencial de função SYSDBA é armazenada em um arquivo de senha externo e não está sujeita a expiração. Esta não é necessariamente a mesma senha que você usaria para conectar -se sem invocar a função SYSDBA.