Fazer backup de um log de transações

Aplica-se a: SQL Server

Este artigo descreve como fazer backup de um log de transações no SQL Server usando o SQL Server Management Studio, o Azure Data Studio, o Transact-SQL ou o PowerShell.

Limitações

A instrução BACKUP não é permitida em uma transação explícita ou implícita. Uma transação explícita é aquela para a qual você define o início e término da transação explicitamente.

Não há suporte para backups de log de transações do banco de dados do sistema master.

Recomendações

Se um banco de dados usar o modelo de recuperação total ou log de transação em massa, você deverá fazer backup do log de transações com regularidade suficiente para proteger os dados e impedir que o log de transações fique cheio. Isso trunca o log e oferece suporte à restauração do banco de dados para um período específico.

Por padrão, toda operação de backup bem-sucedida acrescenta uma entrada ao log de erros do SQL Server e ao log de eventos do sistema. Se você fizer backup do log com frequência, essas mensagens de êxito serão acumuladas muito rapidamente, resultando em logs de erros imensos que dificultam a localização de outras mensagens. Nesses casos, suprima essas entradas de log usando o sinalizador de rastreamento 3226 se nenhum dos scripts depender dessas entradas; confira Sinalizadores de rastreamento (Transact-SQL).

Permissões

Antes de começar, verifique as permissões corretas tanto no nível da instância quanto no nível do armazenamento.

Permissões do Mecanismo de Banco de Dados

As permissões BACKUP DATABASE e BACKUP LOG necessárias são concedidas por padrão aos membros da função de servidor fixa sysadmin e às funções de banco de dados fixas db_owner e db_backupoperator.

Permissões de dispositivo de backup

Os problemas de propriedade e permissão no arquivo físico do dispositivo de backup podem interferir em uma operação de backup. A conta de sistema operacional na qual o serviço SQL Server é executado deve ser capaz de ler e gravar no dispositivo. Os problemas de permissões no arquivo físico do dispositivo de backup poderão não ser óbvios até que você tente acessar o recurso físico ao tentar fazer backup ou uma restauração.

Observação

sp_addumpdevice, que adiciona uma entrada para um dispositivo de backup nas tabelas do sistema, não verifica permissões de acesso a arquivos.

Use SQL Server Management Studio.

Observação

As etapas nesta seção também se aplicam ao Azure Data Studio.

  1. Depois de se conectar à instância apropriada do Mecanismo de Banco de Dados do SQL Server, no Pesquisador de Objetos, selecione o nome do servidor para expandir a árvore do servidor.

  2. Expanda Bancos de Dadose, dependendo do banco de dados, selecione um banco de dados de usuário ou expanda Bancos de Dados do Sistema e selecione um banco de dados do sistema.

  3. Clique com o botão direito do mouse no banco de dados, aponte para Tarefas e escolha Backup. Será exibida a caixa de diálogo Backup de Banco de Dados .

  4. Na caixa de listagem Banco de Dados , verifique o nome do banco de dados. Você pode, como opção, selecionar um banco de dados diferente da lista.

  5. Verifique se o modelo de recuperação é FULL ou BULK_LOGGED.

  6. Na caixa de listagem Tipo de Backup , selecione Log de Transações.

  7. (opcional) Escolha Backup Somente Cópia para criar um backup somente cópia. Um backup somente cópia é um backup do SQL Server independente da sequência de backups convencionais do SQL Server; confira Backups somente cópia.

    Observação

    Quando a opção Diferencial é escolhida, você não pode criar um backup somente cópia.

  8. Aceite o nome do conjunto de backup padrão sugerido na caixa de texto Nome ou digite um nome diferente para o conjunto de backup.

  9. (opcional) Na caixa de texto Descrição, insira uma descrição do conjunto de backup.

  10. Especifique quando o conjunto de backup irá expirar:

    • Para que o conjunto de backup expire após um número específico de dias, escolha Depois (a opção padrão) e digite quantos dias depois da criação do conjunto ele deve expirar. Esse valor pode ser de 0 a 99999 dias; um valor de 0 dia significa que o conjunto de backup nunca vai expirar.

      O valor padrão é definido na opção Retenção de mídia de backup padrão (em dias) da caixa de diálogo Propriedades do Servidor (páginaConfigurações do Banco de Dados ). Para acessar essa caixa de diálogo, clique com o botão direito do mouse no nome do servidor no Pesquisador de Objetos, selecione propriedades e a página Configurações do Banco de Dados .

    • Para que o conjunto de backup expire em uma data específica, escolha Em e insira a data de expiração do conjunto.

  11. Escolha o tipo de destino de backup escolhendo Disco, URL ou Fita. Para selecionar os caminhos de até 64 unidades de disco ou fita que contêm um único conjunto de mídias, escolha Adicionar. Os caminhos selecionados são exibidos na caixa de listagem Backup .

    Para remover um destino de backup, selecione-o e clique em Remover. Para visualizar o conteúdo de um destino de backup, selecione-o e escolha Conteúdo.

  12. Para visualizar ou selecionar as opções avançadas, escolha Opções no painel Selecionar uma página.

  13. Selecione uma opção Substituir Mídia clicando em uma das seguintes opções:

    • Fazer backup no conjunto de mídias existente

      Para essa opção, escolha Acrescentar ao conjunto de backup existente ou Substituir todos os conjuntos de backup existentes; confira Conjuntos de mídias, famílias de mídia e conjuntos de backup (SQL Server).

      • (opcional) Escolha Verificar nome do conjunto de mídias e expiração do conjunto de backup para que a operação de backup verifique a data e a hora em que o conjunto de mídias e o conjunto de backup expiram.

      • (opcional) Insira um nome na caixa de texto Nome do conjunto de mídias. Se nenhum nome for especificado, um conjunto de mídias com um nome em branco será criado. Se você especificar um nome de conjunto de mídias, a mídia (fita ou disco) é verificada para ver se o nome real corresponde ao nome digitado.

      Se você deixar o nome da mídia em branco e marcar a caixa para verificá-lo na mídia, a verificação terá sucesso se o nome da mídia também estiver em branco na mídia.

    • Fazer backup em um novo conjunto de mídias e apagar todos os conjuntos de backup existentes

      Para essa opção, insira um nome na caixa de texto Nome do novo conjunto de mídias e, opcionalmente, descreva o conjunto de mídias na caixa de texto Descrição do novo conjunto de mídias; confira Conjuntos de mídias, famílias de mídias e conjuntos de backup (SQL Server).

  14. Na seção Confiabilidade , como opção, marque:

  15. Na seção Log de transações :

    • Para fazer backups de log rotineiros, mantenha a seleção padrão Truncar o log de transações removendo entradas inativas.

    • Para fazer backup da parte final do log (o log ativo), marque a opção Fazer backup da parte final do log e deixar o banco de dados no estado de restauração.

      Um backup da parte final do log é realizado após a falha do backup final do log a fim de evitar perda de trabalho. Fazer backup de log ativo (backup da parte final do log) após uma falha, antes do início da restauração do banco de dados ou ao executar failover em um banco de dados secundário. Selecionar esta opção é equivalente a especificar a opção NORECOVERY na instrução BACKUP LOG do Transact-SQL.

      Para obter mais informações sobre backups da parte final do log, confira Backups da parte final do log (SQL Server).

  16. Se o backup estiver sendo feito em uma unidade de fita (conforme especificado na seção Destino da página Geral), a opção Descarregar a fita após o backup estará ativa. Selecionar essa opção ativa a opção Rebobinar a fita antes de descarregar.

  17. Por padrão, a compactação de um backup depende do valor da opção de configuração do servidor padrão de compactação de backup. Porém, independentemente do padrão atual do nível do servidor, é possível compactar um backup marcando a opção Compactar backup, e evitar a compactação marcando a opção Não compactar o backup.

    A compactação de backup é compatível com o SQL Server 2008 (10.0.x) Enterprise e versões posteriores e com o SQL Server 2016 (13.x) Standard com Service Pack 1 e versões posteriores.

    Para visualizar o padrão de compactação de backup atual, confira Visualizar ou configurar o padrão de compactação de backup (opção de configuração do servidor).

    Para criptografar o arquivo de backup, marque a caixa de seleção Criptografar backup. Selecione um algoritmo de criptografia a ser usado para criptografar o arquivo de backup e forneça um Certificado ou uma Chave Assimétrica. Os algoritmos de criptografia disponíveis são:

    • AES 128
    • AES 192
    • AES 256
    • DES triplo

Usar o Transact-SQL

Execute a instrução BACKUP LOG para fazer backup do log de transações, fornecendo as seguintes informações:

  • O nome do banco de dados a que pertence o log de transações a ser feito backup.
  • O dispositivo de backup em que o backup de log de transações será gravado.

Importante

Este exemplo usa o banco de dados AdventureWorks2022 , 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.

Para obter mais informações, confira Visualizar ou alterar o modelo de recuperação de um banco de dados (SQL Server).

Este exemplo cria um backup de log de transações do banco de dados AdventureWorks2022 para o dispositivo de backup criado anteriormente e denominado MyAdvWorks_FullRM_log1.

BACKUP LOG AdventureWorks2022
   TO MyAdvWorks_FullRM_log1;
GO

Usar o PowerShell

Configure e use o Provedor do SQL Server PowerShell. Use o Backup-SqlDatabase cmdlet e especifique Log para o valor do parâmetro -BackupAction .

O exemplo a seguir cria um backup do log do banco de dados <myDatabase> para o local de backup padrão da instância de servidor Computer\Instance.

Backup-SqlDatabase -ServerInstance Computer\Instance -Database <myDatabase> -BackupAction Log