Partilhar via


Como fazer backup do log de transações quando o banco de dados está danificado (Transact-SQL)

Este tópico explica como fazer backup do log de transações quando o banco de dados está danificado.

Para criar um backup do log de transações atualmente ativas

  1. Execute a instrução BACKUP LOG para fazer backup do log de transações atualmente ativas, especificando:

    • O nome do banco de dados ao qual o log de transações cujo backup será feito pertence.

    • O dispositivo de backup onde o backup de log de transações será gravado.

    • A cláusula NO_TRUNCATE.

      Essa cláusula permite fazer backup da parte ativa do log de transações mesmo se o banco de dados estiver inacessível, contanto que o arquivo de log de transações esteja acessível e sem-danos.

  2. Opcionalmente, especifique:

    • A cláusula INIT para substituir a mídia de backup e gravar o backup como o primeiro arquivo na mídia de backup. Se não houver nenhum cabeçalho de mídia, um será escrito automaticamente.

    • As cláusulas SKIP e INIT para substituir a mídia de backup, mesmo se houver backups na mídia de que ainda não tenha expirado ou o nome da mídia não corresponder ao nome da mídia de backup.

    • A cláusula FORMAT, quando você está usando a mídia pela primeira vez, para inicializar a mídia de backup e reescrever qualquer cabeçalho de mídia existente.

      A cláusula INIT não será necessária se a cláusula FORMAT for especificada.

      Observação importanteImportante

      Tenha muito cuidado ao usar a cláusulas FORMAT ou INIT da instrução BACKUP, pois isso destruirá qualquer backup previamente armazenado na mídia de backup.

Exemplo

Observação importanteImportante

O banco de dados MyAdvWorks_FullRM é uma cópia do AdventureWorks2008R2, que usa o modelo de recuperação simples. Para permitir backups de log, antes de fazer um backup de banco de dados completo, o banco de dados foi definido para usar o modelo de recuperação completa, usando ALTER DATABASE MyAdvWorks_FullRM SET RECOVERY FULL.

Esse exemplo faz backup do log de transações atualmente ativas para o banco de dados MyAdvWorks_FullRM mesmo que MyAdvWorks_FullRM esteja danificado e inacessível. Entretanto, o log da transação não está danificado nem inacessível:

BACKUP LOG MyAdvWorks_FullRM
   TO MyAdvWorks_FullRM_log1
   WITH NO_TRUNCATE;
GO