Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Este artigo de backup e restauração é relevante para todos os bancos de dados do SQL Server.
Um backup diferencial é baseado no backup de dados completo anterior mais recente. Um backup diferencial captura apenas os dados que foram alterados desde esse backup completo. O backup completo no qual se baseia um backup diferencial é conhecido como a base do diferencial. Os backups completos, exceto os backups somente cópia, podem servir como base para uma série de backups diferenciais, incluindo backups de banco de dados, backups parciais e backups de arquivos. O backup de base para um backup diferencial de arquivo pode estar contido em um backup completo, um backup de arquivo ou um backup parcial.
Benefícios
Criar um backup diferencial pode ser muito mais rápido do que criar um backup completo. Um backup diferencial registra apenas os dados que foram alterados desde o backup completo no qual o backup diferencial se baseia. Isso facilita a realização de backups de dados frequentes, o que diminui o risco de perda de dados. No entanto, antes de restaurar um backup diferencial, você deve restaurar sua base. Portanto, a restauração a partir de um backup diferencial necessariamente levará mais etapas e tempo do que a restauração a partir de um backup completo, porque dois arquivos de backup são necessários.
Os backups diferenciais de banco de dados são especialmente úteis se um subconjunto de um banco de dados for modificado com mais frequência do que o restante do banco de dados. Nesses casos, os backups diferenciais de banco de dados permitem que você faça backup com freqüência sem a sobrecarga de backups completos do banco de dados.
No modelo de recuperação completa, o uso de backups diferenciais pode reduzir o número de backups de log que você precisa restaurar.
Visão geral dos backups diferenciais
Um backup diferencial captura o estado de todas as extensões (coleções de oito páginas fisicamente contíguas) que foram alteradas entre quando a base diferencial foi criada e quando o backup diferencial foi criado. Isso significa que o tamanho de um determinado backup diferencial depende da quantidade de dados que mudou desde a base. Em geral, quanto mais antiga for uma base de dados, maior será uma nova cópia de segurança diferencial. Em uma série de backups diferenciais, é provável que uma extensão atualizada com frequência contenha dados diferentes em cada backup diferencial.
A ilustração a seguir mostra como funciona um backup diferencial. A figura mostra 24 extensões de dados, 6 das quais foram alteradas. O backup diferencial contém apenas essas seis extensões de dados. A operação de backup diferencial baseia-se numa página de bitmap que contém um bit para cada extent. Para cada extensão atualizada desde a base, o bit é definido como 1 no bitmap.
Observação
O bitmap diferencial não é atualizado por um backup somente cópia. Portanto, um backup de apenas cópia não afeta os backups diferenciais subsequentes.
Um backup diferencial que é feito logo após sua base pode ser significativamente menor do que a base diferencial. Isso economiza espaço de armazenamento e tempo de backup. No entanto, à medida que um banco de dados muda ao longo do tempo, a diferença entre o banco de dados e uma base diferencial específica aumenta. Quanto maior for o tempo entre um backup diferencial e a sua base, maior será provavelmente o tamanho do backup diferencial. Isso significa que os backups diferenciais podem, eventualmente, se aproximar da base diferencial em tamanho. Um backup diferencial grande perde as vantagens de um backup mais rápido e menor.
À medida que os backups diferenciais aumentam de tamanho, a restauração de um backup diferencial pode aumentar significativamente o tempo necessário para restaurar um banco de dados. Portanto, recomendamos que você faça um novo backup completo em intervalos definidos para estabelecer uma nova base diferencial para os dados. Por exemplo, você pode fazer um backup completo semanal de todo o banco de dados (ou seja, um backup completo do banco de dados) seguido por uma série regular de backups diferenciais de banco de dados durante a semana.
No momento da restauração, antes de restaurar um backup diferencial, você deve restaurar sua base. Em seguida, restaure apenas o backup diferencial mais recente para antecipar o banco de dados para o momento em que esse backup diferencial foi criado. Normalmente, você restauraria o backup completo mais recente seguido pelo backup diferencial mais recente baseado nesse backup completo.
Backups diferenciais de bancos de dados com tabelas com otimização de memória
Para obter informações sobre backups diferenciais e bancos de dados com tabelas com otimização de memória, consulte Fazendo backup de um banco de dados com tabelas Memory-Optimized.
Cópias de segurança diferenciais de bases de dados só de leitura
Para bases de dados de só leitura, os backups completos usados sozinhos são mais fáceis de gerir do que quando usados com backups diferenciais. Quando um banco de dados é somente leitura, o backup e outras operações não podem alterar os metadados contidos no arquivo. Portanto, os metadados necessários para um backup diferencial, como o número de sequência de log no qual o backup diferencial começa (o LSN de base diferencial), são armazenados na base de dados master. Se a base diferencial for criada quando o banco de dados estiver em modo somente leitura, o bitmap diferencial indicará mais alterações do que as ocorridas desde o backup inicial. Os dados extras são lidos pelo backup, mas não são gravados no backup, porque o differential_base_lsn armazenado na tabela do sistema backupset é usado para determinar se os dados foram alterados desde a base.
Quando um banco de dados de apenas leitura é reconstruído, restaurado ou desanexado e depois anexado, as informações de base diferencial são perdidas. Isso ocorre porque o master banco de dados não está sincronizado com o banco de dados do usuário. O Mecanismo de Banco de Dados do SQL Server não pode detetar ou evitar esse problema. Quaisquer backups diferenciais posteriores não se baseiam no backup completo mais recente e podem fornecer resultados inesperados. Para estabelecer uma nova base diferencial, recomendamos que você crie um backup de banco de dados completo.
Práticas recomendadas para usar backups diferenciais com um banco de dados somente leitura
Depois de criar um backup de banco de dados completo de um banco de dados somente leitura, se você pretende criar um backup diferencial subsequente, faça backup do master banco de dados.
Se o master banco de dados for perdido, restaure-o antes de restaurar qualquer backup diferencial de um banco de dados de usuário.
Se você desanexar e anexar um banco de dados somente leitura para o qual planeja usar backups diferenciais posteriormente, assim que for prático, faça um backup completo do banco de dados somente leitura e do banco de master dados.
Tarefas relacionadas
- Criar um backup diferencial de banco de dados (SQL Server)
- Restaurar um backup diferencial de banco de dados (SQL Server)