Temos um arquivo bak de um cliente que transferimos para nossos escritórios de desenvolvedores para investigação de problemas. Atualmente, o backup tem 25 GB e o banco de dados restaurado tem aproximadamente o mesmo tamanho, mas precisa de 100 GB para ser restaurado. Acredito que isso ocorra porque o banco de dados está configurado para ter um tamanho de log de transações de 75 GB. Depois de restaurar o banco de dados, podemos reduzir o arquivo de log, mas existe uma maneira de fazer isso na restauração?
relate perguntas
-
Preciso de índices separados para cada tipo de consulta ou um índice de várias colunas funcionará?
-
Quando devo usar uma restrição exclusiva em vez de um índice exclusivo?
-
Quais são as principais causas de deadlocks e podem ser evitadas?
-
Como determinar se um Índice é necessário ou necessário
-
Downgrade do SQL Server 2008 para 2005
Existe um truque do tipo "não faça isso em um ambiente ao vivo" que você pode usar onde o espaço é limitado, restaurando o arquivo de log em uma pasta compactada. Tente isso comprimindo uma pasta existente e restaurando nela resultará em um erro, então você terá que trapacear com um link simbólico.
D:\LogCompressed\
Crie um link simbólico para a pasta compactada
mklink /D /J D:\Log\ D:\LogCompressed\
Restaure seu banco de dados com o arquivo ldf apontando para
D:\Log\
Reduza o arquivo de log para um tamanho apropriado
Desanexe o banco de dados, mova o arquivo de log para uma pasta descompactada, anexe
É sujo, é trapaça, NUNCA FAÇA ISSO NA LIVE , mas funciona. O teste rápido de um banco de dados recém-criado com um arquivo de log de 32 MB mostra que ele ocupa 330 KB no disco quando compactado, descompacte a pasta e o tamanho do disco volta a 32 MB.
Não há como reduzir o backup como parte do processo de restauração. O banco de dados restaurado deve se parecer exatamente com o banco de dados de origem, com a única exceção de que você pode alterar as letras da unidade e as pastas.
Acredito que o motivo do seu backup ser de 25 GB e do banco de dados restaurado de 100 GB não é por causa do seu log de transações. Meu palpite é que seus arquivos de banco de dados têm 100 GB de espaço alocado e há 25 GB de dados reais no banco de dados.
Há uma diferença entre o espaço de arquivo de banco de dados alocado e o espaço de dados utilizado . Nesse caso, o primeiro é de 100 GB e o último de 25 GB.