Fazer backup e restaurar bancos de dados do SQL Server

Este tópico descreve os benefícios do backup dos bancos de dados do SQL Server bancos de dados, as condições de backup e restauração básicas, apresenta estratégias de backup e restauração para SQL Server e considerações de segurança sobre backup e restauração do SQL Server.

O componente de backup e restauração do SQL Server oferece uma proteção essencial para dados críticos armazenados em bancos de dados do SQL Server. Para minimizar o risco de perda de dados catastrófica, você precisa fazer backup dos bancos de dados para preservar as modificações feitas nos dados regularmente. Uma estratégia de backup e restauração bem planejada ajuda a proteger bancos de dados contra perda de dados causada por várias falhas. Teste sua estratégia restaurando um conjunto de backups e recuperando depois seu banco de dados para se preparar para responder com eficiência a um desastre.

ObservaçãoObservação

A partir da atualização cumulativa 2 do SQL Server 2012 SP1, há suporte para o backup do SQL Server no serviço de armazenamento de Blob do Windows Azure. Para obter mais informações, consulte Aprimoramentos de backup e restauração e Backup e restauração do SQL Server com o serviço de armazenamento de Blob do Windows Azure.

Para obter soluções para problemas comuns do cliente com o Banco de Dados do Windows Azure SQL, as SQL Server Data Tools e o SQL Server Management Studio, consulte Gerenciamento de ciclo de vida de banco de dados.

Neste tópico:

  • Benefícios

  • Componentes e conceitos

  • Introdução às estratégias de backup e restauração

  • Tarefas relacionadas

Benefícios

  • O backup dos bancos de dados do SQL Server, a execução de procedimentos de restauração de teste nos backups e o armazenamento de cópias de backups em um local externo seguro evita a perda de dados potencialmente catastrófica.

    Observação importanteImportante

    Essa é a única maneira de proteger os dados do SQL Server de forma confiável.

    Com backups válidos de um banco de dados, você pode recuperar seus dados de muitas falhas, como:

    • Falha de mídia.

    • Por exemplo, erros de usuário, que removem uma tabela por engano.

    • Por exemplo, problemas de hardware, uma unidade de disco danificada ou perda permanente de um servidor.

    • Desastres naturais.

  • Além disso, os backups de um banco de dados são úteis para fins administrativos rotineiros, como copiar um banco de dados de um servidor para outro, configurar o espelhamento do banco de dados ou Grupos de Disponibilidade AlwaysOn e fazer arquivamento.

[Início]

Componentes e conceitos

  • backup [verbo]
    Copia os dados ou registros de log de um banco de dados do SQL Server ou de seu log de transações para um dispositivo de backup, como um disco, a fim de criar um backup de dados ou backup de log.

  • backup [substantivo]
    Uma cópia dos dados que podem ser usados para restaurar e recuperar os dados após uma falha. Os backups de um banco de dados também podem ser usados para restaurar uma cópia do banco de dados em um novo local.

  • dispositivo de backup
    Um disco ou dispositivo de fita no qual os backups do SQL Server serão gravados e nos quais eles poderão ser restaurados.

  • mídia de backup
    Uma ou mais fitas ou arquivos de disco nos quais um ou mais backups foram gravados.

  • backup de dados
    Um backup de dados em um banco de dados completo (um backup de banco de dados), um banco de dados parcial (um backup parcial) ou um conjunto de arquivos de dados ou grupos de arquivos (um backup de arquivo).

  • backup de banco de dados
    Um backup de um banco de dados. Os backups completos de banco de dados representam todo o banco de dados no momento em que o backup é concluído. Os backups de banco de dados diferenciais contêm somente alterações feitas no banco de dados desde seu backup completo de banco de dados mais recente.

  • backup diferencial
    Um backup de dados que se baseia no backup completo mais recente de um banco de dados completo ou parcial ou um conjunto de arquivos de dados ou grupos de arquivos (a base diferencial) que contém somente os dados alterados desde essa base.

  • backup completo
    Um backup de dados que contém todos os dados em um banco de dados ou em um conjunto de grupos de arquivos ou arquivos, além de log suficiente para permitir a recuperação desses dados.

  • backup de log
    Um backup de logs de transações que inclui todos os registros de log dos quais não foi feito backup em um backup de log anterior. (modelo de recuperação completa)

  • recuperação
    Para retornar um banco de dados a um estado estável e consistente.

  • recuperação
    Uma fase de inicialização de banco de dados ou de restauração com recuperação que coloca o banco de dados em um estado de transação consistente.

  • modelo de recuperação
    Uma propriedade de banco de dados que controla a manutenção do log de transações em um banco de dados. Existem três modelos de recuperação: simples, completo e bulk-logged. O modelo de recuperação de banco de dados determina seus requisitos de backup e de restauração.

  • restaurar
    Um processo multifase que copia todos os dados e páginas de log de um backup do SQL Server para um banco de dados especificado e, em seguida, efetua roll-forward de todas as transações registradas no backup, aplicando as alterações registradas para avançar os dados em tempo.

[Início]

Introdução às estratégias de backup e restauração

O backup e a restauração dos dados devem ser personalizados em um ambiente específico e devem funcionar com os recursos disponíveis. Portanto, um uso confiável de backup e restauração para recuperação requer uma estratégia de backup e restauração. Uma estratégia de backup e restauração bem planejada maximiza a disponibilidade dos dados e minimiza a perda de dados, considerando, ao mesmo tempo, seus requisitos empresariais específicos.

Observação importanteImportante

Coloque o banco de dados e os backups em dispositivos separados. Caso contrário, se o dispositivo que contém o banco de dados falhar, seus backups ficarão indisponíveis. Colocar os dados e backups em dispositivos separados também aprimora o desempenho de E/S dos backups gravados e o uso de produção do banco de dados.

Uma estratégia de backup e restauração contém uma parte de backup e uma parte de restauração. A parte de backup da estratégia define o tipo e a frequência dos backups, a natureza e velocidade do hardware exigido para eles, como os backups serão testados, e onde e como a mídia de backup deve ser armazenada (incluindo considerações de segurança). A parte de restauração da estratégia define quem é responsável pela execução da restauração e como a restauração deve ser executada para atender às metas de disponibilidade do banco de dados e minimizar perda de dados. Recomendamos que você documente seus procedimentos de backup e restauração e mantenha uma cópia da documentação em seu livro de execuções.

O design de uma estratégia de backup e restauração eficaz requer planejamento, implementação e teste cuidadosos. O teste é obrigatório. Não existirá uma estratégia de backup até que você tenha restaurado com êxito os backups em todas as combinações incluídas na estratégia de restauração. Você deve considerar uma variedade de fatores. Eles incluem o seguinte:

  • As metas de produção de sua organização para os bancos de dados, especialmente os requisitos para disponibilidade e proteção contra perda de dados.

  • A natureza de cada um dos seus bancos de dados: o tamanho, os padrões de uso, a natureza de seu conteúdo, os requisitos dos dados, e assim por diante.

  • Restrições de recursos, como hardware, pessoal, espaço para armazenagem de mídia de backup, a segurança física da mídia armazenada, e assim por diante.

    ObservaçãoObservação

    O formato de armazenamento do SQL Server em disco é o mesmo nos ambientes de 64 bits e 32 bits. Portanto, backup e restauração funcionam em ambientes de 32 bits e 64 bits. Um backup criado em uma instância de servidor executada em um ambiente pode ser restaurado em uma instância de servidor executada em outro ambiente.

[Início]

Impacto do modelo de recuperação no backup e na restauração

As operações de backup e restauração ocorrem dentro do contexto de um modelo de recuperação. Um modelo de recuperação é uma propriedade de banco de dados que controla a forma de gerenciamento do log de transações. Além disso, o modelo de recuperação de um banco de dados determina para quais tipos de backups e cenários de restauração o banco de dados oferece suporte. Geralmente, um banco de dados usa o modelo de recuperação simples ou o modelo de recuperação completa. O modelo de recuperação completa pode ser suplementado alternando para o modelo de recuperação bulk-logged antes das operações em massa. Para obter uma introdução a esses modelos de recuperação e como eles afetam o gerenciamento do log de transações, consulte O log de transações (SQL Server).

A melhor escolha do modelo de recuperação para o banco de dados depende de seus requisitos empresariais. Para evitar gerenciamento de log de transações e simplificar o backup e a restauração, use o modelo de recuperação simples. Para minimizar exposição à perda de trabalho, às custas de uma sobrecarga administrativa, use o modelo de recuperação completa. Para obter informações sobre o efeito dos modelos de recuperação no backup e na restauração, consulte Visão geral de backup (SQL Server).

Planejar a estratégia de backup

Depois de selecionar um modelo de recuperação que satisfaça seus requisitos empresariais para um banco de dados específico, você precisa planejar e implementar uma estratégia de backup correspondente. A melhor estratégia de backup depende de uma série de fatores, dos quais os seguintes são especialmente significativos:

  • Quantas horas ao dia os aplicativos precisam acessar o banco de dados?

    Se houver um período de pouca atividade previsível, recomendamos que você agende backups de banco de dados completos para aquele período.

  • Com que frequência as alterações e atualizações deverão ocorrer?

    Se as alterações forem frequentes, considere o seguinte:

    • No modelo de recuperação simples, agende backups diferenciais entre os backups de banco de dados completos. Um backup diferencial captura só as alterações desde o último backup completo do banco de dados.

    • No modelo de recuperação completa, você deve agendar backups de log frequentes. O agendamento de backups diferenciais entre backups completos pode reduzir o tempo de restauração reduzindo o número de backups de log a serem restaurados após a restauração dos dados.

  • As alterações ocorrem geralmente em uma pequena parte do banco de dados ou em uma grande parte do banco de dados?

    Para um banco de dados grande no qual mudanças estão concentradas em uma parte dos arquivos ou grupos de arquivos, backups parciais e backups de arquivo podem ser úteis. Para obter mais informações, consulte Backups parciais (SQL Server) e Backups completos de arquivos (SQL Server).

  • Quanto espaço em disco é necessário para um backup completo de banco de dados?

    Para obter mais informações, consulte Estimando o tamanho de um backup de banco de dados completo posteriormente nesta seção.

Estimar o tamanho de um backup de banco de dados completo

Antes de implementar uma estratégia de backup e restauração, calcule quanto espaço em disco um backup de banco de dados completo usará. A operação de backup copia os dados no banco de dados para o arquivo de backup. O backup contém só os dados reais no banco de dados e não qualquer espaço não utilizado. Portanto, o backup é geralmente menor do que o próprio banco de dados. Você pode estimar o tamanho de um backup de banco de dados completo usando o procedimento armazenado do sistema sp_spaceused. Para obter mais informações, consulte sp_spaceused (Transact-SQL).

Agendar backups

A execução do backup tem um efeito mínimo sobre as transações em andamento; portanto, as operações de backup podem ser realizadas durante a operação regular. Você pode executar um backup do SQL Server com um efeito mínimo sobre as cargas de trabalho de produção.

ObservaçãoObservação

Para obter informações sobre restrições de simultaneidade durante o backup, consulte Visão geral de backup (SQL Server).

Depois de decidir os tipos de backups necessários e a frequência de execução de cada tipo, recomendamos que você agende backups regulares como parte de um plano de manutenção de banco de dados para o banco de dados. Para obter informações sobre planos de manutenção e como criá-los para fazer backups de banco de dados e backups de log, consulte Usar o Assistente de Plano de Manutenção.

Testar seus backups

Não existirá uma estratégia de restauração até que você tenha testado seus backups. É muito importante testar sua estratégia de backup completamente para cada um dos bancos de dados, restaurando uma cópia do banco de dados em um sistema de teste. É necessário testar a restauração de cada tipo de backup que você pretende usar.

Recomendamos que você mantenha um manual de operações para cada banco de dados. Esse manual operacional deve documentar o local dos backups, os nomes do dispositivo de backup (se houver) e o tempo necessário para restaurar os backups de teste.

Tarefas relacionadas

Agendando trabalhos de backup

Trabalhando com dispositivos de backup e mídias de backup

Criando backups

ObservaçãoObservação

Para backups parciais ou somente cópia, use a instrução Transact-SQL BACKUP com a opção PARTIAL ou COPY_ONLY, respectivamente.

Usando o SQL Server Management Studio

Usando Transact-SQL

[Início]

Restaurando backups de dados

Usando o SQL Server Management Studio

Usando Transact-SQL

[Início]

Restaurando logs de transações (modelo de recuperação completa)

Usando o SQL Server Management Studio

Usando Transact-SQL

[Início]

Tarefas de restauração adicionais

Usando Transact-SQL

[Início]

Consulte também

Referência

BACKUP (Transact-SQL)

RESTORE (Transact-SQL)

Conceitos

Visão geral de backup (SQL Server)

Visão geral da restauração e recuperação (SQL Server)

Backup e restauração de bancos de dados do Analysis Services

Fazer backup e restaurar índices e catálogos de texto completo

Fazer backup e restaurar bancos de dados replicados

O log de transações (SQL Server)

Modelos de recuperação (SQL Server)

Conjuntos de mídias, famílias de mídia e conjuntos de backup (SQL Server)