Oracle 11.2.0.3 com backup completo diário e backup de archivelog de hora em hora. RMAN com um catálogo.
Se eu fizer um backup às 23h da noite e terminar às 5h do dia seguinte e quiser restaurar um backup em um sistema diferente, como posso identificar um horário para 'definir até' ou um SCN que exigirá a menor quantidade de archivelogs a serem reproduzidos? 23h? Depois das 5 da manhã? RMAN é a minha parte menos compreendida do banco de dados.
Eu tenho um script semanal que automatiza uma duplicata do backup do prod. Quando eu o herdei, ele fazia uma duplicata até o tempo e era altamente dependente de trabalhos concluídos dentro do cronograma, para que pudesse assumir um bom 'até o tempo'. Eu modifiquei para obter um bom scn e assim duplicar 'até scn'. Recebo o scn com este trecho de código consultando o catálogo rman, em um shell script. Se você estiver no Windows, precisará ajustar a técnica de script, mas o princípio é o mesmo:
Meu script RMAN faz backup do arquivo de controle primeiro, depois de todos os arquivos de dados e, em seguida, dos arquivos de log do archive. Se você sabe quando os arquivos de dados terminam de fazer backup e adiciona 20 minutos para a almofada, você pode usar isso como um conjunto até a hora. Portanto, você teria a menor quantidade de refazer sendo aplicada. Idealmente, você tem os logs de arquivamento disponíveis para o banco de dados clonado, para que possa avançar as alterações necessárias. Você sabe quantos logs de arquivo estão sendo criados durante o backup dos arquivos de dados?
Por que isso importa?
A menos que você tenha um aplicativo muito incomum, a quantidade de Redo Logs a serem reaplicados será mínima em comparação com o tamanho dos arquivos de dados que você está restaurando. Você não reduzirá muito o tempo geral de restauração.