Arquivo de backup do SQL Server significativamente menor após a recriação da tabela

1

Executamos backups semanais automatizados de nosso SQL Server. O banco de dados em questão está configurado para recuperação simples. Fazemos backup usando Full, não diferencial.

Recentemente, tivemos que recriar uma de nossas tabelas com dados nela (tornando dois campos varchar um par de caracteres a mais). Isso exigia a execução de um script que criasse uma nova tabela, copiasse os dados e depois os descartasse. Isso funcionou corretamente.

Curiosamente, nossos arquivos de backup semanais agora SHRANK em mais de 75%! As tabelas não possuem índices grandes. Todos os dados foram copiados corretamente (e verificados). Eu verifiquei que estamos fazendo backups completos e não incrementais. Os novos arquivos são restaurados corretamente.

Eu não consigo descobrir por que os arquivos de backup teriam encolhido tanto? Também notei que eles obtêm cerca de 10 MB a mais por semana, embora menos que essa quantidade de dados seja adicionada.

Eu estou supondo que eu simplesmente não estou entendendo alguma coisa. Qualquer insight seria apreciado.

    
por userx 29.08.2012 / 04:17

1 resposta

1

Se todos os dados estiverem lá, então é uma combinação dos logs de transação para o banco de dados que está sendo confirmado no banco de dados e excluídos do disco, e qualquer "espaço em branco" no banco de dados que está sendo eliminado. Para a maioria dos bancos de dados, quando os dados são excluídos, a linha é removida, mas nenhum dado novo é inserido nessa linha depois, portanto, você pode acabar com uma quantidade substancial de "espaço em branco" que não contém dados, mas ocupa espaço físico tudo a mesma coisa.

Há uma diferença entre o tamanho lógico de um banco de dados (o tamanho que os dados ocupam) e o tamanho físico de um banco de dados (o tamanho que o arquivo ou arquivos do banco de dados ocupam), sendo a diferença quase exclusivamente uma combinação duas coisas mencionadas acima.

    
por 29.08.2012 / 04:30