SQL Server 2008 Database 250 GB em uma unidade de 250 GB

2

Iniciou um novo trabalho e há um banco de dados de 2008 sql com 250 GB de tamanho. Os desenvolvedores insistem que o tamanho está certo. O problema é que o arquivo MDF de 250GB está em uma unidade de 250GB.

Eu tentei fazer um backup do banco de dados, mas recebo este erro:

System.Data.SqlClient.SqlError: Ocorreu um erro de E / S irrecuperável no arquivo "C: \ Backup \ backup.bkf:" 112 (falha ao recuperar texto para este erro. Motivo: 1815). (Microsoft.SqlServer.Smo)

Eu basicamente tenho duas opções:

  • Tente reduzir o tamanho do MDF, se isso for possível!
  • Atualizar o Raid Array

Qualquer ajuda apreciada.

Obrigado

    
por Skeep 25.06.2010 / 17:53

3 respostas

2

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:

  1. 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)
  2. 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.
  3. 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.
  4. 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)
por 14.09.2010 / 15:55
0

Você pode tentar diminuir os arquivos do banco de dados. Clique com o botão direito no banco de dados - > Tarefas - > Encolher (dentro do Mgmt Studio). Para um banco de dados de 250 GB, isso levará um longo tempo - talvez até uma hora.

Ou você pode anexar um disco rígido USB externo e tentar fazer o backup.

    
por 25.06.2010 / 17:58
0

Obviamente, faça o backup em outra unidade. Se o banco de dados tiver 250 GB, deixe-o em 250 GB. Você precisa de espaço adicional para operações de manutenção, você tem uma justificativa comercial perfeita para armazenamento adicional. Eis uma boa razão para não executar o SHRINKDATABASE ...

    
por 25.06.2010 / 18:44