Usuário com melhor resposta
Informação sobre exportação de dados

Pergunta
-
Boas senhores,
Tenho que fazer a copia de um base de dados SS, com versões diferentes, pesquisando, a melhor saída é através de exportação e importação....SSIS
Minha dúvida é: Não consigo conectar as duas bases, então tenho que gerar um tipo de saída, qual devo usar? excell ou flat file destination ? Ou tanto faz?
Quero copiar todo do banco.
t+
Respostas
-
Vc deseja fazer uma cópia da base de dados?
Se sim, vc pode fazer um backup da base, através SSMS ou via SSIS mesmo. Se desejar copiar apenas uma tabela, utilize o SSIS para tal. Quanto ao tipo de arquivo destino, fica a critério seu. O que adequa melhor ao seu contexto e re-utilização deste arquivo posteriormente.
Abs.
Eduardo Gomes - http://www.h1solucoes.com.br - Twitter: @edugp_sp
- Marcado como Resposta DET1 terça-feira, 20 de março de 2012 14:24
-
DET1,
Tenho uma sugestão, que eu não sei se é a melhor, mas talvez ajude.Você pode criar uma base em modo compatibilidade no mesmo servidor que está sua base fonte.
Através do Import/Export você conseguirá migrar todos os dados da base fonte para essa nova base. Depois pode fazer um Attach/Detach da base e colocá-la no outro servidor, caso necessite.
Acredito que a maneira mais fácil é você deixar que o próprio wizard do Import/Export crie as tabelas pra você e migre todos os dados. Depois você cria as chaves primárias, índices e afins.
Se você optar por gerar um script do banco todo, criar todos os objetos e depois exportar os dados, provavelmente terá problemas com integridade referencial na migração, pois as tabelas não são migradas respeitando hierarquias.Espero ter ajudado
[]'s
Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */
- Marcado como Resposta DET1 terça-feira, 20 de março de 2012 14:24
Todas as Respostas
-
Vc deseja fazer uma cópia da base de dados?
Se sim, vc pode fazer um backup da base, através SSMS ou via SSIS mesmo. Se desejar copiar apenas uma tabela, utilize o SSIS para tal. Quanto ao tipo de arquivo destino, fica a critério seu. O que adequa melhor ao seu contexto e re-utilização deste arquivo posteriormente.
Abs.
Eduardo Gomes - http://www.h1solucoes.com.br - Twitter: @edugp_sp
- Marcado como Resposta DET1 terça-feira, 20 de março de 2012 14:24
-
-
DET1,
Tenho uma sugestão, que eu não sei se é a melhor, mas talvez ajude.Você pode criar uma base em modo compatibilidade no mesmo servidor que está sua base fonte.
Através do Import/Export você conseguirá migrar todos os dados da base fonte para essa nova base. Depois pode fazer um Attach/Detach da base e colocá-la no outro servidor, caso necessite.
Acredito que a maneira mais fácil é você deixar que o próprio wizard do Import/Export crie as tabelas pra você e migre todos os dados. Depois você cria as chaves primárias, índices e afins.
Se você optar por gerar um script do banco todo, criar todos os objetos e depois exportar os dados, provavelmente terá problemas com integridade referencial na migração, pois as tabelas não são migradas respeitando hierarquias.Espero ter ajudado
[]'s
Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */
- Marcado como Resposta DET1 terça-feira, 20 de março de 2012 14:24
-
Mariana, obrigado pelo retorno
Acredito que sua dica seja muito boa..vamos aos detalhes, não sou dba portanto posso dizer algumas bobagens por falta de conhecimento ok
Seguinte ja fiz o primeiro item da sua dica, fui no servidor criei uma nova base e fiz o export. Na compatibilidade escolhi a opção sqlserver2008 100, é a unica que tem para ss2008.
Agora a parte do Attach/Detach não achei como faz isso....fiz outro teste criei um backup desta nova base e ao tentar restaurar recebi a mesma msg de incompatibilidade de versão, tem algum detalhe na escolha da compatilidade?
TITLE: Microsoft SQL Server Management Studio
------------------------------
Restore failed for Server XX (Microsoft.SqlServer.SmoExtended)
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.0.1600.22+((SQL_PreRelease).080709-1414+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Restore+Server&LinkId=20476
------------------------------
ADDITIONAL INFORMATION:
System.Data.SqlClient.SqlError: The database was backed up on a server running version 10.50.1617. That version is incompatible with this server, which is running version 10.00.1600. Either restore the database on a server that supports the backup, or use a backup that is compatible with this server. (Microsoft.SqlServer.Smo)
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.0.1600.22+((SQL_PreRelease).080709-1414+)&LinkId=20476
Será que com o tal attach, vai rolar? -
Bom dia DET1,
Você realmente não vai conseguir restaurar um backup do SQL Server 2008 R2 em um servidor SQL Server 2008.
Achei que suas versões eram diferentes tipo 2005 - 2008, Se fosse isso bastava criar a base em modo compatibilidade e pronto.
Acredito que o Attach não vai funcionar. O seu servidor com o SQL Server 2008 não irá aceitar uma base criada no 2008 R2.
Mas se quiser tentar, clique com o botão direito na sua base e clique em "Detach". Mova os arquivos se necessário.No seu servidor SQL Server 2008, clique em Databases -> Attach e procure seus arquivos.
Nunca testei isso, mas não acho que vá funcionar.
[]'sMariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */
-
-
Eduardo, este transfer seria o importar e exportar, não achei como transfer...
Fiz o seguinte...como uma das opções dada neste post, fiz uma geração de script com os dados e estou tentando rodar o script na minha maquina e recebo o seguinte erro:
TITLE: Microsoft SQL Server Management Studio
Cannot execute script.
ADDITIONAL INFORMATION:
Exception of type 'System.OutOfMemoryException' was thrown. (mscorlib) -
-