Sim, você definitivamente precisará executar o backup em um local diferente que tenha espaço livre suficiente. Se você tiver o SQL2008 R2 Standard (ou qualquer versão do 2008 Enterprise), você pode fazer um backup compactado (também possível com software de terceiros como o Quest Litespeed). Caso contrário, seu backup será tão grande quanto o tamanho do arquivo de dados + o tamanho do arquivo de registro.
Em relação ao encolhimento, você terá que primeiro determinar se é possível reduzir o arquivo, conhecendo o espaço usado / espaço livre dentro do próprio arquivo. Um arquivo de 250 GB pode ter 240 GB usados e 10 GB livres ou vice-versa. (A maneira mais fácil de determinar isso: clique com o botão direito do mouse no banco de dados e vá para Tarefas > Encolher > Arquivos. NÃO clique em OK, basta olhar para o espaço alocado atualmente VS "disponível espaço livre", baixando o "tipo de arquivo" caixa para ver os dados vs log).
Dependendo do que você encontrar, você terá algumas escolhas:
- Se você tiver espaço livre suficiente no arquivo, talvez esteja bem. O arquivo de dados não vai tentar crescer até que seja completamente preenchido (com algumas exceções, como uma reconstrução de índice em uma tabela particularmente massiva)
- Se você tiver espaço livre no arquivo, poderá tentar recuperar alguns dele. (O SQL precisa de alguma "sala de cotovelo", por assim dizer, portanto, não tente recuperar todo espaço livre.) Use primeiro a opção "Liberar espaço não utilizado" (isso simplesmente liberará o espaço já em o final do arquivo). Então, se você ainda precisar de mais, escolha um tamanho de alvo específico, em vez de tentar recuperar todo espaço livre. Sempre faça o acompanhamento com uma reconstrução completa do índice, pois os dados encolhidos causam a fragmentação do arquivo.
- Se o arquivo de dados estiver na maior parte cheio, talvez ainda tenha algumas opções: Você pode adicionar um novo arquivo de dados (no mesmo "grupo de arquivos") em uma unidade diferente. Certifique-se de que o arquivo de 250GB esteja não para crescimento automático e que o novo arquivo novo (em uma unidade diferente) esteja definido para crescimento automático. Assim, qualquer "estouro" do primeiro arquivo se transformará no segundo arquivo.
- Se você quiser ser um pouco mais deliberado, poderá criar um arquivo (em uma unidade diferente) com um grupo de arquivos new . Então você precisará mover tabelas ou índices específicos para este novo arquivo (usando ALTER TABLE)