none
Informação sobre exportação de dados RRS feed

  • 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+

    sexta-feira, 16 de março de 2012 15:49

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
    sexta-feira, 16 de março de 2012 16: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
    sexta-feira, 16 de março de 2012 21:43

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
    sexta-feira, 16 de março de 2012 16:24
  • Backup não da, pois a fonte esta com versão superior ao destino. 

    Via SSIS, é possível fazer a copia do banco todo, ou tenho que ir tabela a tabela...?

    sexta-feira, 16 de março de 2012 20:28
  • 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
    sexta-feira, 16 de março de 2012 21:43
  • 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?

    sexta-feira, 16 de março de 2012 23:04
  • 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.


    []'s


    Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */

    sábado, 17 de março de 2012 13:18
  • DET1, bom dia.

    Tente utilizar o Transfer database task do SSIS.

    Abs.


    Eduardo Gomes - http://www.h1solucoes.com.br - Twitter: @edugp_sp

    segunda-feira, 19 de março de 2012 12:15
  • 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)
    segunda-feira, 19 de março de 2012 16:02
  • Quebrei o script em varias partes e consegui rodar...agora vamos avaliar se o banco esta ok t+
    segunda-feira, 19 de março de 2012 16:36
  • Obrigado a todos, o banco esta rodando.....

    terça-feira, 20 de março de 2012 14:23