Exemplo: restauração de banco de dados por etapas (modelo de recuperação completa)
Aplica-se a: SQL Server
Uma sequência de restauração por etapas restaura e recupera um banco de dados em etapas no nível do grupo de arquivos, começando pelo grupo de arquivos primário e todos os grupos de arquivo secundários de leitura e gravação.
Nesse exemplo, o banco de dados adb
é restaurado em um computador novo depois de um desastre. O banco de dados está usando o modelo de recuperação completa; portanto, antes do início da restauração, um backup do final do log deve ser extraído do banco de dados. Antes do desastre, todos os grupos de arquivos estão online. O grupo de arquivos B
é somente leitura. Todos os grupos de arquivos secundários precisam ser restaurados, mas são restaurados em ordem de importância: A
(mais alto), C
, e por fim B
. Nesse exemplo, há quatro backups de log, inclusive o backup do final do log.
Backup do final do log
Antes de restaurar o banco de dados, o administrador do banco de dados deve fazer backup do final do log. Como o banco de dados está danificado, é preciso usar a opção NO_TRUNCATE para criar o backup do final do log:
BACKUP LOG adb TO tailLogBackup WITH NORECOVERY, NO_TRUNCATE
O backup do final do log é o último backup aplicado nas sequências de restauração a seguir.
Sequências da restauração
Observação
A sintaxe para uma sequência de restauração online é igual à de uma sequência de restauração offline.
Restauração parcial do grupo de arquivos primário e secundário
A
.RESTORE DATABASE adb FILEGROUP='Primary' FROM backup1 WITH PARTIAL, NORECOVERY RESTORE DATABASE adb FILEGROUP='A' FROM backup2 WITH NORECOVERY RESTORE LOG adb FROM log_backup3 WITH NORECOVERY RESTORE LOG adb FROM log_backup4 WITH NORECOVERY RESTORE LOG adb FROM log_backup5 WITH NORECOVERY RESTORE LOG adb FROM tailLogBackup WITH RECOVERY
Restauração online do grupo de arquivos
C
.Neste momento, o grupo de arquivos primário e o grupo de arquivos secundário
A
estão online. Todos os arquivos nos grupos de arquivosB
eC
estão em recuperação pendente e os grupos de arquivos estão offline.Mensagens da última instrução
RESTORE LOG
na etapa 1 indicam que a reversão das transações que envolvem o grupo de arquivosC
foi adiada, porque o grupo de arquivos não está disponível. As operações regulares podem continuar, mas bloqueios são mantidos por essas transações e o truncamento de log não acontecerá até que a reversão esteja concluída.Na segunda sequência de restauração, o administrador de banco de dados restaura o grupo de arquivos
C
:RESTORE DATABASE adb FILEGROUP='C' FROM backup2a WITH NORECOVERY RESTORE LOG adb FROM log_backup3 WITH NORECOVERY RESTORE LOG adb FROM log_backup4 WITH NORECOVERY RESTORE LOG adb FROM log_backup5 WITH NORECOVERY RESTORE LOG adb FROM tailLogBackup WITH RECOVERY
Neste momento, o grupo de arquivos primário e os grupos de arquivos
A
eC
estão online. Os arquivos no grupo de arquivosB
permanecem em recuperação pendente, com o grupo de arquivos offline. As transações adiadas foram resolvidas e o truncamento de log acontece.Restauração online do grupo de arquivos
B
.
Na terceira sequência de restauração, o administrador de banco de dados restaura o grupo de arquivos B
. O backup do grupo de arquivos B
foi realizado depois de o grupo de arquivos tornar-se somente leitura; portanto, não tem de efetuar roll forward durante a recuperação.
RESTORE DATABASE adb FILEGROUP='B' FROM backup2b WITH RECOVERY
Todos os grupos de arquivos agora estão online.
Exemplos adicionais
Exemplo: restauração de banco de dados por etapas (modelo de recuperação simples)
Exemplo: restauração por etapas de apenas alguns grupos de arquivos (modelo de recuperação simples)
Exemplo: restauração online de um arquivo somente leitura (modelo de recuperação simples)
Exemplo: restauração por etapas de apenas alguns grupos de arquivos (modelo de recuperação completa)
Exemplo: restauração online de um arquivo de leitura/gravação (modelo de recuperação completa)
Exemplo: restauração online de um arquivo somente leitura (modelo de recuperação completa)
Confira também
BACKUP (Transact-SQL)
Restauração online (SQL Server)
Aplicar backups de log de transações (SQL Server)
RESTORE (Transact-SQL)
Restaurações por etapas (SQL Server)