Compartilhar via


Fazer backup de arquivos e grupos de arquivos (SQL Server)

Este tópico descreve como fazer backup de arquivos e grupos de arquivos no SQL Server 2014 usando o SQL Server Management Studio, o Transact-SQL ou o PowerShell. Quando os requisitos de desempenho e tamanho do banco de dados tornam um backup de banco de dados completo impraticável, você pode criar um backup de arquivo. Um backup de arquivo contém todos os dados em um ou mais arquivos (ou grupos de arquivos). Para obter mais informações sobre backups de arquivos, consulte Backups de Arquivos Completos (SQL Server) e Backups Diferenciais (SQL Server).

Nesse Tópico

Antes de começar

Limitações e restrições

  • A instrução BACKUP não é permitida em uma transação explícita ou implícita.

  • No modelo de recuperação simples, todos os arquivos de leitura/gravação devem ser armazenados em backup juntos. Isso ajuda a garantir que o banco de dados possa ser restaurado para um ponto consistente no tempo. Em vez de especificar individualmente cada arquivo de leitura/gravação ou grupo de arquivos, use a opção READ_WRITE_FILEGROUPS. Essa opção faz backup de todos os grupos de arquivos de leitura/gravação no banco de dados. Um backup criado especificando READ_WRITE_FILEGROUPS é conhecido como um backup parcial. Para obter mais informações, consulte Backups Parciais (SQL Server).

  • Para obter mais informações sobre limitações e restrições, consulte a Visão Geral do Backup (SQL Server).

Recomendações

  • 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 muita frequência, essas mensagens de sucesso se acumularão rapidamente, resultando em enormes logs de erros que podem dificultar a localização de outras mensagens. Nesses casos, você pode suprimir essas entradas de log usando o sinalizador de rastreamento 3226 se nenhum dos seus scripts depender delas. Para obter mais informações, confira Sinalizadores de rastreamento (Transact-SQL).

Segurança

Permissões

As permissões BACKUP DATABASE e BACKUP LOG usam como padrão os membros da função de servidor fixa sysadmin e as funções de banco de dados fixas db_owner e db_backupoperator .

Os problemas de propriedade e permissão no arquivo físico do dispositivo de backup podem interferir em uma operação de backup. SQL Server deve ser capaz de ler e gravar no dispositivo; a conta sob a qual o serviço do SQL Server executa deve ter permissões de gravação. No entanto, sp_addumpdevice, que adiciona uma entrada para um dispositivo de backup nas tabelas do sistema, não verifica permissões de acesso a arquivos. Esses problemas no arquivo físico do dispositivo de backup podem não aparecer até que o recurso físico seja acessado quando o backup ou restauração for tentado.

Como usar o SQL Server Management Studio.

Para fazer backup de arquivos de banco de dados e grupos de arquivos

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

  2. Expanda bancos de dados e, 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 clique em Fazer Backup. A caixa de diálogo Fazer Backup do Banco de Dados será exibida.

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

  5. Na lista de tipos de backup , selecione Completo ou Diferencial.

  6. Para a opção componente Backup , clique em Arquivo e Grupos de Arquivos.

  7. Na caixa de diálogo Selecionar Arquivos e Grupos de Arquivos, selecione os arquivos e grupos de arquivos que você deseja fazer backup. Você pode selecionar um ou mais arquivos individuais ou marcar a caixa de um grupo de arquivos para selecionar automaticamente todos os arquivos nesse grupo de arquivos.

  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. Opcionalmente, na caixa de texto Descrição , digite uma descrição do conjunto de backup.

  10. Especifique quando o conjunto de backup expirará:

    • Para que o conjunto de backup expire após um número específico de dias, clique em Depois (a opção padrão). Em seguida, insira o número de dias após a criação do conjunto em que ele expirará. Esse valor pode ser de 0 a 99999 dias; um valor de 0 dias significa que o conjunto de backup nunca expirará.

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

    • Para que o conjunto de backup expire em uma data específica, clique em Ativar e insira a data em que o conjunto expirará.

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

    Observação

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

  12. Para exibir ou selecionar as opções avançadas, clique em 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, clique em Acrescentar ao conjunto de backup existente ou substituir todos os conjuntos de backup existentes. Para obter informações sobre como fazer backup em um conjunto de mídia existente, consulte Conjuntos de Mídia, Famílias de Mídia e Conjuntos de Backup (SQL Server).

      Opcionalmente, selecione Verificar o nome do conjunto de mídias e a expiração do conjunto de backup para fazer com 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.

      Opcionalmente, insira um nome na caixa de texto nome do conjunto de mídia. 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) será verificada para ver se o nome real corresponde ao nome que você insere aqui.

      Se você deixar o nome da mídia em branco e marcar a caixa para compará-lo com a mídia, o sucesso será o nome da mídia na mídia também estar em branco.

    • 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 Novo nome do conjunto de mídias e, opcionalmente, descreva o conjunto de mídias na caixa de texto Descrição do novo conjunto de mídias . Para obter mais informações sobre como criar um novo conjunto de mídias, consulte Conjuntos de Mídias, Famílias de Mídia e Conjuntos de Backup (SQL Server).

  14. Na seção Confiabilidade , opcionalmente, verifique:

  15. Se você estiver fazendo backup 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. Clicar nessa opção habilita a opção Retroceder a fita antes de descarregar .

    Observação

    As opções na seção Log de transações são inativas, a menos que você esteja fazendo backup de um log de transações (conforme especificado na seção Tipo de backup da página Geral ).

  16. O SQL Server 2008 Enterprise e versões posteriores dão suporte à compactação de backup. Por padrão, se um backup é compactado depende do valor da opção de configuração do servidor padrão de compactação de backup . No entanto, independentemente do padrão atual no nível do servidor, você pode compactar um backup marcando Compactar backup e pode impedir a compactação marcando Não compactar backup.

    Para exibir o padrão de compactação de backup atual

Usando Transact-SQL

Para fazer backup de arquivos e grupos de arquivos

  1. Para criar um backup de arquivo ou grupo de arquivos, use uma instrução BACKUP DATABASE <file_or_filegroup> . Minimamente, essa instrução deve especificar o seguinte:

    • Nome do banco de dados.

    • Uma cláusula FILE ou FILEGROUP para cada arquivo ou grupo de arquivos, respectivamente.

    • O dispositivo de backup no qual o backup completo será gravado.

    A sintaxe de Transact-SQL básica para um backup de arquivo é:

    BACKUP DATABASE banco de dados

    { ARQUIVO =logical_file_name | GRUPO DE ARQUIVOS =logical_filegroup_name } [ ,... f ]

    TO backup_device [ , ... n ]

    [ WITH with_options [ ,... o ] ] ;

    Opção Descrição
    base de dados É o banco de dados do qual é feito o backup do log de transações, do banco de dados parcial ou do banco de dados completo.
    ARQUIVO =logical_file_name Especifica o nome lógico de um arquivo a ser incluído no backup de arquivo.
    FILEGROUP =LOGICAL_FILEGROUP_NAME Especifica o nome lógico de um grupo de arquivos a ser incluído no backup de arquivo. No modelo de recuperação simples, um backup de grupo de arquivos é permitido apenas para grupos de arquivos somente leitura.
    [ ,... f ] É um espaço reservado que indica que vários arquivos e grupos de arquivos podem ser especificados. O número de arquivos ou grupos de arquivos é ilimitado.
    backup_device [ ,... n ] Especifica uma lista de 1 a 64 dispositivos de backup a serem usados para a operação de backup. Você pode especificar um dispositivo de backup físico ou especificar um dispositivo de backup lógico correspondente, se já definido. Para especificar um dispositivo de backup físico, use a opção DISK ou TAPE:

    { DISCO | TAPE } =physical_backup_device_name

    Para obter mais informações, consulte Dispositivos de Backup (SQL Server).
    WITH with_options [ ,... o ] Opcionalmente, especifica uma ou mais opções adicionais, como DIFERENCIAL.

    Observação: um backup de arquivo diferencial requer um backup de arquivo completo como base. Para obter mais informações, consulte Criar um Backup de Banco de Dados Diferencial (SQL Server).
  2. No modelo de recuperação completa, você também deve fazer backup do log de transações. Para usar um conjunto completo de backups de arquivos completos para restaurar um banco de dados, você também deve ter backups de log suficientes para abranger todos os backups de arquivo, desde o início do primeiro backup de arquivo. Para obter mais informações, confira Fazer backup de um log de transações (SQL Server).

Exemplos (Transact-SQL)

Os exemplos a seguir backup de um ou mais arquivos dos grupos de arquivos secundários do Sales banco de dados. Esse banco de dados usa o modelo de recuperação completa e contém os seguintes grupos de arquivos secundários:

  • Um grupo de arquivos nomeado SalesGroup1 que tem os arquivos SGrp1Fi1 e SGrp1Fi2.

  • Um grupo de arquivos nomeado SalesGroup2 que tem os arquivos SGrp2Fi1 e SGrp2Fi2.

Um. Criando um backup de arquivo de dois arquivos

O exemplo a seguir cria um backup de arquivo diferencial somente do SGrp1Fi2 arquivo e SalesGroup1 do SGrp2Fi2 arquivo do SalesGroup2 grupo de arquivos.

--Backup the files in the SalesGroup1 secondary filegroup.  
BACKUP DATABASE Sales  
   FILE = 'SGrp1Fi2',   
   FILE = 'SGrp2Fi2'   
   TO DISK = 'G:\SQL Server Backups\Sales\SalesGroup1.bck';  
GO  

B. Criando um backup de arquivo completo dos grupos de arquivos secundários

O exemplo a seguir cria um backup de arquivo completo de todos os arquivos dos dois grupos de arquivos secundários.

--Back up the files in SalesGroup1.  
BACKUP DATABASE Sales  
   FILEGROUP = 'SalesGroup1',  
   FILEGROUP = 'SalesGroup2'  
   TO DISK = 'C:\MySQLServer\Backups\Sales\SalesFiles.bck';  
GO  

C. Criando um backup de arquivo diferencial dos grupos de arquivos secundários

O exemplo a seguir cria um backup diferencial de cada arquivo nos dois grupos de arquivos secundários.

--Back up the files in SalesGroup1.  
BACKUP DATABASE Sales  
   FILEGROUP = 'SalesGroup1',  
   FILEGROUP = 'SalesGroup2'  
   TO DISK = 'C:\MySQLServer\Backups\Sales\SalesFiles.bck'  
   WITH   
      DIFFERENTIAL;  
GO  

Como usar o PowerShell

Use o Backup-SqlDatabase cmdlet e especifique Files como o valor para o parâmetro -BackupAction. Além disso, especifique um dos seguintes parâmetros:

-   To back up a specific file, specify the `-DatabaseFile`*String* parameter, where *String* is one or more database files to be backed up.  

-   To back up all the files in a given filegroup, specify the `-DatabaseFileGroup`*String* parameter, where *String* is one or more database filegroups to be backed up.  

 The following example creates a full file backup of every file in the secondary filegroups 'FileGroup1' and 'FileGroup2' in the `MyDB` database. The backups are created on the default backup location of the server instance `Computer\Instance`.  

```powershell
Backup-SqlDatabase -ServerInstance Computer\Instance -Database MyDB -BackupAction Files -DatabaseFileGroup "FileGroup1","FileGroup2"  
```  

Para configurar e usar o provedor do SQL Server PowerShell, consulte o Provedor do SQL Server PowerShell.

Consulte Também

Visão geral do backup (SQL Server)
BACKUP (Transact-SQL)
RESTORE (Transact-SQL)
Histórico de backup e informações de cabeçalho (SQL Server)
Fazer backup do banco de dados (página geral)
Fazer backup do banco de dados (página Opções de Backup)
Backups completos de arquivos (SQL Server)
Backups diferenciais (SQL Server)
Restaurações de arquivo (modelo de recuperação completa)
Restaurações de arquivo (modelo de recuperação simples)