Planejando e executando seqüências de restauração (modelo de recuperação completa)
Este tópico é relevante para bancos de dados SQL Server que normalmente usam o modelo de recuperação completa.
Uma seqüência de restauração é uma seqüência de uma ou mais instruções RESTORE. Geralmente, uma seqüência de restauração inicializa os conteúdos do banco de dados, arquivos, e/ou páginas sendo restaurados (a fase de cópia de dados), efetua roll forward das transações registradas (a fase refazer) e reverte as transações não confirmadas (a fase desfazer). Para obter mais informações sobre essas fases, consulte Compreendendo como a restauração e a recuperação de backups funcionam no SQL Server.
Observação |
---|
Para uma introdução aos tipos de backup, consulte Visão geral de backup (SQL Server). |
Em casos simples, uma seqüência de restauração requer apenas um backup de banco de dados completo, um backup de banco de dados diferencial e os backups de log subseqüentes. Nesses casos, criar uma seqüência de restauração correta é fácil. Por exemplo, para restaurar todo um banco de dados ao ponto da falha, comece fazendo backup do log de transações ativas (a parte final do log). Depois, restaure o backup de banco de dados completo mais recente, o backup diferencial mais recente (se houver) e todos os backups de log subseqüentes na ordem em que foram feitos.
Em casos mais complexos, criar uma seqüência de restauração correta pode ser um processo complexo. Por exemplo, uma seqüência de restauração pode exigir vários backups de arquivo ou restauração de dados a um point-in-time específico. Em casos muito complexos, você pode ter que transpor um caminho de recuperação que abrange uma ou mais bifurcações de recuperação.
Planejando uma seqüência de restauração
Antes de iniciar uma seqüência de restauração, siga estas etapas:
Crie um backup do final do log do banco de dados, se puder. Para obter mais informações, consulte Backups da parte final do log.
Determine o ponto de recuperação desejado.
O ponto de recuperação desejado pode ser qualquer point-in-time ou marca em um backup de log de transações. Para obter mais informações, consulte Restaurando um banco de dados para um ponto em um backup ou Usando transações marcadas (modelo de recuperação completa).
Determine o tipo de restauração que você deseja executar. Para obter mais informações, consulte os seguintes tópicos:
Identifique quais backups são necessários e certifique-se de que os conjuntos de mídia e dispositivos de backup necessários estão disponíveis. Para obter mais informações, consulte Trabalhando com mídia de backup no SQL Server.
Executando uma seqüência de restauração
Para executar uma seqüência de restauração, siga estes passos:
Para iniciar a seqüência, restaure um ou mais backups de dados, como: um backup de banco de dados, um backup parcial, ou um ou mais backups de arquivo.
Opcionalmente, restaure os últimos backups diferenciais baseados nestes backups completos.
Para cada backup completo que você planeja restaurar, determine se ele é a base de qualquer backup diferencial. Nesse caso, restaure o backup diferencial mais recente, se puder. Para obter mais informações, consulte Usando backups diferenciais.
Efetue roll forward do banco de dados restaurando backups de log em seqüência, terminando com o backup que contém o ponto de recuperação. A aplicação de todos os backups de log depende se o backup de log contém o ponto de recuperação desejado, como segue:
Se o ponto de recuperação for o ponto de falha, você deve restaurar todo backup de log criado desde o último backup de dados (completo ou diferencial) restaurado. Para obter mais informações, consulte Aplicando backups de log de transações.
Para a restauração point-in-time, podem não ser necessários os backups de log mais recentes. Para obter mais informações, consulte Restauração point-in-time.
Reinicializando uma seqüência de restauração
Se você encontrar um problema com o resultado de uma seqüência de restauração, pode encerrá-la e reiniciar a seqüência de restauração desde o início. Por exemplo, se você restaurar muitos backups de log acidentalmente e exceder o ponto de recuperação pretendido, reinicialize a seqüência de restauração até o backup de log que contém o ponto de recuperação desejado.
Consulte também