SQL Server 2005 para 2008 DB anexar elp por favor!

1

Eu tenho o SQL Server 2005 Standard na minha máquina pessoal. Eu criei um banco de dados muito grande sobre 21 gb. Eu fiz um backup e transferi o arquivo .bak através de um programa de FTP para o meu servidor dedicado. Eu tenho o SQL Server 2008 Enterprise Edition no meu servidor dedicado. Eu tentei restaurar o arquivo .bak transferido, mas recebi um erro. Eu postei o erro aqui e foi dito que o banco de dados está corrompido. Como? Eu não sei. A conexão não foi interrompida durante a transferência do ftp. O banco de dados funciona na minha própria máquina. Então, eu desanexei o db na minha própria máquina e transferi o arquivo mdf e ldf para o meu servidor dedicado através do ftp de novo e de novo não houve interrupções. Agora eu tento anexar o banco de dados e obter este erro: O cabeçalho para o arquivo 'DB.mdf' não é um cabeçalho de arquivo de banco de dados válido. A propriedade FILE SIZE está incorreta. (Microsoft SQL Server, erro: 5172)

Para obter ajuda, clique em: link

Eu já perdi 21 gb transferindo o arquivo .bak. Agora eu usei outro 21 para transferir mdf e arquivo ldf adicional. Por favor me diga que há uma solução. O db pode desanexar e anexar bem na minha máquina no SQL Server 2005, mas não o SQL Server 2008 no meu servidor.

    
por Tom O'Connor 11.06.2010 / 13:49

2 respostas

5

Eu estou supondo que sua transferência está de alguma forma sendo corrompida, mesmo que pareça ter sido concluída com sucesso. Isso acontece.

Minha dica seria Zip seu arquivo BAK antes de transferir. Você deve encontrar o arquivo BAK comprime muito bem, até 3 ou 4GB de 21GB eu esperaria. O WinRAR é ainda melhor em compactar os dados.

É possível restaurar um arquivo BAK 2005 em uma configuração do SQL 2008, assim como mover os arquivos MDF e LDF brutos e anexá-los ao servidor SQL 2008 conforme documentado aqui .

    
por 11.06.2010 / 15:52
1

Qual programa de FTP você está usando? Alguns mais baratos não podem lidar com arquivos maiores que 2/4 gigs sem rolar.

Além disso, pegue um programa CRC simples e execute-o contra o seu arquivo local e o remoto. use o CRC32, já que ele é muito mais rápido que o MD5 e você não está interessado em suas propriedades criptográficas.

    
por 11.06.2010 / 16:42