Se eu tiver essa estratégia de backup (backup completo semanal e backup de log de 1 hora), posso restaurar o banco de dados para o período de tempo destacado em verde? Aliás, o backup de log 2 inclui todos os registros de log que têm seu lsn maior que o last_lsn do backup de log 1?
Fiz mais alguns testes e acho que encontrei a resposta. De acordo com a imagem no agendamento de backup, fiz um backup completo inicial, alguns backups de log, depois o backup de log 1, um backup completo, backup de log 2. Tenho modificações no meio. Use RESTORE HEADERONLY
para verificar o backup de log 1, backup completo e backup de log 2, abaixo está o que eu tenho. Como você pode ver, o backup de log 2 captura todos os registros de log do último no backup de log 1. Se eu quiser restaurar para um ponto no período destacado em verde, preciso usar o backup de log 2, não o back completo.
Sim, você pode fazer uma restauração pontual.
Você precisaria do último backup completo e de todos os backups de log até o ponto necessário, pois os backups de log não contêm todos os logs anteriores (eles são, em certo sentido, incrementais, em vez de diferenciais).
Para uma semana de logs em um banco de dados ocupado, pode levar algum tempo para restaurar. Portanto, uma solução melhor (se você quiser manter os fulls semanais) é fazer um backup diferencial todos os dias ou duas vezes por dia.
Isso significa que você só precisa do último backup completo, do último backup diff e de todos os logs que vão para frente até quando quiser restaurar.
Um ciclo de backup bastante padrão em muitos servidores é: diário completo, diff 4-6 por dia e logs a cada poucos minutos. Isso dá um tempo de restauração bastante rápido. Isso também significa, mais importante, que sua perda máxima de dados nunca é superior a alguns minutos, em vez de até uma hora.