ORA-26040
Bloco carregado com NOLOGGING (irrecuperável)
O que significa
O bloco foi populado por operação NOLOGGING/UNRECOVERABLE e depois o datafile passou por recover — o conteúdo não existe no redo, então o Oracle marca como corrompido ('soft corrupt').
Ação imediata
Identifique o objeto e a janela da carga NOLOGGING.
Como diagnosticar somente leitura — seguro de executar
V$DATAFILE.UNRECOVERABLE_CHANGE#/TIME
- RMAN REPORT UNRECOVERABLE; dba_extents para mapear o objeto.
Correção definitiva
Recarregar os dados da fonte original (a informação não é recuperável do banco). Em standby: refresh dos datafiles afetados a partir do primary.
Como prevenir
ALTER DATABASE FORCE LOGGING (essencial com Data Guard); se usar NOLOGGING, backup imediatamente após a carga.
Regras de ouro antes de agir
- Preserve o estado atual. Antes de qualquer reparo, copie os arquivos como estão (datafiles, controlfiles, redo) — é a sua única volta se algo der errado.
- Diagnostique antes de executar. As consultas desta página são somente leitura; rode-as primeiro e entenda o cenário antes de qualquer comando que altere o ambiente.
- Teste fora de produção sempre que possível, e tenha um plano de rollback.
- Em corrupção, recovery ou ORA-600: abra um SR no Suporte Oracle. Tentativa e erro nesses cenários costuma transformar um problema recuperável em perda de dados.