Eu fiz os seguintes passos:
- Banco de dados com backup com NÍVEL INCREMENTAL 0
Exclua o backup INCREMENTAL LEVEL 0 sem informar ao controlfile. Portanto, excluí-lo manualmente. E não fez verificação cruzada.
Banco de dados com backup com NÍVEL INCREMENTAL 1 (sem fazer verificação cruzada). Como pode ser surpreendente, o log me mostrou que o INCREMENTAL LEVEL 1 foi feito com sucesso.
Observe que não tenho backup INCREMENTAL LEVEL 0 , mas controlfile não sabe disso. Eu tenho apenas INCREMENTAL LEVEL 1 .
Tentei restaurar o banco de dados com esse backup, mas é claro que não consegui. Ele estava me dizendo que nenhum backup do arquivo de dados 1-5 foi encontrado ...
Se controlfile soubesse sobre backups EXPIRED, então o backup INCREMENTAL LEVEL 1 primeiro faria INCREMENTAL LEVEL 0 e depois disso INCREMENTAL LEVEL 1 .
Como evitar esta situação. Tenho que usar o chrosscheck no meu script de backup? Ou definir a janela de recuperação no RMAN?
Eu tenho banco de dados Oracle 11g. O backup é feito pelo Netbackup Server. Portanto, o próprio Netbackup exclui os backups por meio de sua retenção. A política de retenção do RMAN está configurada para REDUNDÂNCIA 2.
Por favor, me aconselhe.
Sim, se você quiser evitar que um nível 1 seja criado sem que um nível 0 correspondente esteja disponível, será necessário fazer uma verificação cruzada no script para que o RMAN saiba que o nível 0 não está disponível.
Antes de 10g (ou com compatibilidade < 10.0) , o Oracle faria um nível 0 quando um nível 1 fosse feito sem um nível 0 . Como você está no 11g, eu esperaria que sua compatibilidade fosse >=10.0, então o RMAN "copia todos os blocos que foram alterados desde que o arquivo foi criado" . Esse comportamento parece ter mudado entre as versões e há alguma confusão sobre qual é o comportamento atual, mas suas descobertas são consistentes com a documentação.