Fazer backup de arquivos e grupos de arquivos
Aplica-se a:SQL Server
Este tópico descreve como fazer backup de arquivos e grupos de arquivos no SQL Server usando o SQL Server Management Studio, Transact-SQL ou PowerShell. Quando o tamanho do banco de dados e os requisitos de desempenho tornam um backup completo do banco de dados 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 ficheiros, consulte Backups completos de ficheiros (SQL Server) e Backups diferenciais (SQL Server) .
Antes de começar
Limitações e Restrições
A instrução BACKUP não é permitida numa transação explícita ou implícita.
No modelo de recuperação simples, todos os arquivos de leitura/gravação devem ser copiados juntos. Isso ajuda a garantir que o banco de dados possa ser restaurado para um ponto no tempo consistente. Em vez de especificar individualmente cada arquivo de leitura/gravação ou grupo de arquivos, use a opção READ_WRITE_FILEGROUPS. Esta 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 backup parcial , consulte Backups parciais (SQL Server).
Para obter mais informações sobre limitações e restrições, consulte Visão geral do backup (SQL Server).
Recomendações
Por padrão, cada operação de backup bem-sucedida adiciona uma entrada no log de erros do SQL Server e no log de eventos do sistema. Se você fizer backup do log com muita frequência, essas mensagens de sucesso se acumulam 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 dessas entradas, consulte Sinalizadores de rastreamento (Transact-SQL).
Permissões
BACKUP DATABASE
e BACKUP LOG
são permissões padrão atribuídas a membros da função fixa de servidor sysadmin e às funções fixas de banco de dados db_owner e db_backupoperator.
Problemas de propriedade e permissão no arquivo físico do dispositivo de backup podem interferir em uma operação de backup. O SQL Server deve ser capaz de ler e gravar no dispositivo; a conta sob a qual o serviço do SQL Server é executado 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 as permissões de acesso ao arquivo. 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.
Usando o SQL Server Management Studio
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.
Expanda Bancos de Dadose, dependendo do banco de dados, ou selecione um banco de dados de usuário, ou expanda Bancos de Dados do Sistema e selecione um banco de dados do sistema.
Clique com o botão direito do rato na base de dados, aponte para Tarefase, em seguida, clique em Backup. A caixa de diálogo Banco de Dados de Backup é exibida.
Na lista da Base de Dados , verifique o nome da base de dados. Opcionalmente, você pode selecionar um banco de dados diferente da lista.
Na lista Tipo de backup, selecione Completo ou Diferencial.
Para o componente Backup opção, clique em Arquivo e Grupos de Arquivos.
Na caixa de diálogo Selecionar Arquivos e Grupos de Arquivos, selecione os arquivos e grupos de arquivos dos quais 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.
Aceite o nome do conjunto de backup padrão sugerido na caixa de texto Nome ou insira um nome diferente para o conjunto de backup.
(facultativo) Na caixa de texto Descrição, insira uma descrição do conjunto de backup.
Especifique quando o conjunto de backup expirará:
Para definir que o conjunto de backup expire após um número específico de dias, clique em Após (a opção padrão) e insira o número de dias após a criação do conjunto em que este expirará. Este 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 Retenção de mídia de backup padrão (em dias) da caixa de diálogo Propriedades do Server (páginaConfiguraçõ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 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 Eme insira a data em que o conjunto expirará.
Escolha o tipo de destino de backup clicando em de disco ou de fita . Para selecionar os caminhos de até 64 unidades de disco ou fita que contêm um único conjunto de mídias, clique 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 visualizar o conteúdo de um destino de backup, selecione-o e clique em Conteúdo.
Para exibir ou selecionar as opções avançadas, clique em Opções no painel Selecionar uma página.
Selecione uma opção Substituir Mídia, clicando em uma das seguintes opções:
Backup para o conjunto de mídia 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).
(facultativo) Selecione Verificar nome do conjunto de mídia e verificar 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ídia e o conjunto de backup expiram.
(opcional) Introduza um nome na caixa de texto Nome do conjunto de mídia. Se nenhum nome for especificado, um conjunto de mídia com um nome em branco será criado. Se você especificar um nome de conjunto de mídia, a mídia (fita ou disco) será verificada para ver se o nome real corresponde ao nome inserido aqui.
Se deixar o nome da mídia em branco e marcar a caixa para verificá-lo contra a mídia, o sucesso ocorrerá se o nome da mídia na mídia também estiver em branco.
Faça backup em um novo conjunto de mídia e apague todos os conjuntos de backup existentes
Para essa opção, digite um nome na caixa de texto Novo nome do conjunto de mídia e, opcionalmente, descreva o conjunto de mídia 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ídia, famílias de mídia e conjuntos de backup (SQL Server).
(facultativo) Na seção de confiabilidade, verifique:
Verificar o backup quando concluído.
Execute um checksum antes de gravar na mídia, e (opcional) prosseguir em caso de erro de checksum.
Para obter mais informações sobre somas de verificação, consulte Possíveis Erros de Mídia Durante o Backup e a Restauração (SQL Server).
Se estiver a fazer backup numa 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 nesta opção ativa a opção Rebobinar a fita antes de descarregar.
Observação
As opções na seção de log de transações do estão inativas, a menos que você esteja fazendo backup de um log de transações (conforme especificado na seção Tipo de de Backup da página Geral do).
O SQL Server 2008 (10.0.x) Enterprise e versões posteriores oferecem suporte a compactação de backup. Por padrão, se um backup é compactado depende do valor da opção de configuração de 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, consulte Exibir ou configurar a opção de configuração do servidor padrão de compactação de backup
Usando Transact-SQL
Para criar um backup de arquivo ou grupo de arquivos, use uma instrução BACKUP DATABASE <file_or_filegroup>. Minimamente, esta declaração deve especificar o seguinte:
O 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 Transact-SQL básica para um backup de arquivo é:
BANCO DE DADOS DE BACKUP banco de dados
{ ARQUIVO =logical_file_name | GRUPO DE ARQUIVOS =logical_filegroup_name } [ ,...f ]
PARA backup_device [ ,...n ]
[ COM com_opções [ ,...o ] ;
Opção | Descrição |
---|---|
base de dados | É o banco de dados do qual é feito 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 do arquivo. |
GRUPO DE ARQUIVOS =logical_filegroup_name | Especifica o nome lógico de um grupo de arquivos a ser incluído no backup de arquivos. No modelo de recuperação simples, é permitida uma cópia de segurança apenas para um grupo de ficheiros só de leitura. |
[ ,...f ] | É um espaço reservado que indica que vários ficheiros e grupos de ficheiros 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 um dispositivo de backup lógico correspondente, se já estiver definido. Para especificar um dispositivo de backup físico, use a opção DISK ou TAPE: { DISCO | FITA } =physical_backup_device_name Para obter mais informações, consulte Dispositivos de Cópia de Segurança (SQL Server). |
COM com_opções [ ,...o ] | Opcionalmente, especifica uma ou mais opções adicionais, como DIFERENCIAL. Um backup de arquivo diferencial requer um backup de arquivo completo como base. Para obter mais informações, consulte Criar um backup diferencial de banco de dados (SQL Server). |
No modelo de recuperação completa, você também deve fazer backup do log de transações. Para usar um conjunto completo de backups completos de arquivos para restaurar um banco de dados, você também deve ter backups de log suficientes para abranger todos os backups de arquivos, desde o início do primeiro backup de arquivos.
Para obter mais informações, consulte Efetuar Backup de um Log de Transações (SQL Server).
Exemplos
Os exemplos a seguir fazem backup de um ou mais arquivos dos grupos de arquivos secundários do banco de dados Sales
. 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 chamado
SalesGroup1
que tem os arquivosSGrp1Fi1
eSGrp1Fi2
.Um grupo de arquivos chamado
SalesGroup2
que tem os arquivosSGrp2Fi1
eSGrp2Fi2
.
Um. Criar um backup de arquivo de dois arquivos
O exemplo a seguir cria um backup de arquivo diferencial somente do arquivo SGrp1Fi2
do SalesGroup1
e do arquivo SGrp2Fi2
do grupo de arquivos SalesGroup2
.
--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. Criar um backup completo dos grupos de arquivos secundários
O exemplo a seguir cria um backup completo de cada arquivo em ambos os 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. Criar um backup de arquivo diferencial dos grupos de arquivos secundários
O exemplo a seguir cria um backup de arquivo diferencial de cada arquivo em ambos os 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
Usando o PowerShell
Configurar e usar o SQL Server PowerShell Provider.
Use o cmdlet Backup-SqlDatabase e especifique Files para o valor do parâmetro -BackupAction. Além disso, especifique um dos seguintes parâmetros:
Para fazer backup de um arquivo específico, especifique o parâmetro -DatabaseFileString, onde String é um ou mais arquivos de banco de dados para backup.
Para fazer backup de todos os arquivos em um determinado grupo de arquivos, especifique o parâmetro -DatabaseFileGroupString, onde String é um ou mais grupos de arquivos de banco de dados para backup.
O exemplo a seguir cria um backup completo de cada arquivo nos grupos de arquivos secundários 'FileGroup1' e 'FileGroup2' no banco de dados <myDatabase>
. Os backups são criados no local de backup padrão da instância do servidor Computer\Instance
.
Backup-SqlDatabase -ServerInstance Computer\Instance -Database <myDatabase> -BackupAction Files -DatabaseFileGroup "FileGroup1","FileGroup2"
Ver também
Visão Geral de Backup (SQL Server)
BACKUP (Transact-SQL)
RESTAURAR (Transact-SQL)
Histórico de Backup e Informações de Cabeçalho (SQL Server)
Banco de Dados de Backup (Página Geral)
Banco de Dados de Backup (Página Opções de Backup)
Backups Completos de Ficheiros (SQL Server)
Backups Diferenciais (SQL Server)
Restaurações de Arquivos (Modelo de Recuperação Completa)
Restaurações de arquivos (modelo de recuperação simples)