none
Migracao de dados de bancos diferentes RRS feed

  • Pergunta

  • Bom dia pessoal,Preciso realizar uma migração de massa de dados de um banco de dados para outro.

    Criei uma Proc para realizar essa migração, porém se eu utilizar essa mesma proc para migrar o banco todo, tendo em vista que são várias tabelas e muitos dados, o Banco pode cair e parar a produção.

    Existe algum meio de criar uma proc que atenda a todas as tabelas ou preciso criar uma proc para cada uma delas?

    quinta-feira, 14 de abril de 2016 13:20

Respostas

  • Clayton,

    Você pode utilizar os próprios recursos existentes no Management Studio para realizar este tipo de importação/exportação de dados.

    Este link vai te ajudar: https://msdn.microsoft.com/en-us/library/ms140052.aspx

    Inclusive se você quiser pode também utilizar o SSIS ou SQL Server Data Tools para realizar este procedimento.

    https://social.technet.microsoft.com/Forums/pt-BR/20659b4f-996f-4841-86b5-931f41389da4/sql-server-data-tools-business-intelligence-for-visual-studio-2012?forum=sqlintegrationservices


    Pedro Antonio Galvao Junior [MVP | MCC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    • Marcado como Resposta ClaytonSouza quinta-feira, 14 de abril de 2016 13:57
    • Não Marcado como Resposta ClaytonSouza quinta-feira, 14 de abril de 2016 13:57
    • Marcado como Resposta ClaytonSouza quinta-feira, 14 de abril de 2016 14:24
    quinta-feira, 14 de abril de 2016 13:52
  • Isso não pode ser feito com o banco de dados ativo, funcionando, com várias pessoas com login ativo utilizando.  Se ocorrer um erro durante essa tarefa poderá perder toda ou parte da informação armazenada.  O banco de dados SQL Server tem que estar offline para uma importação e exportação de dados ser feita. Não é seguro fazer com ele online, com pessoas utilizando ao mesmo tempo.  

    Idem quanto ao Microsoft Access, para importação e exportação de dados também não pode ter várias pessoas utilizando o banco  de dados, ao mesmo tempo.  

    Bom dia


    Ana Gauna - Senior Systems Analyst [MCSE] [MCDBA] [CCNA2] - Skype: amgauna


    • Editado Ana Gauna quinta-feira, 14 de abril de 2016 14:08
    • Marcado como Resposta ClaytonSouza quinta-feira, 14 de abril de 2016 14:24
    quinta-feira, 14 de abril de 2016 13:58
  • O Microsoft SQL Server  existe em 2 versões:  SERVER (Microsoft SQL Server 2016 Candidate2 para ser instalado em máquinas com o Microsoft Windows Server instalado) e CLIENT-SERVER (Microsoft SQL 2012 Express para ser instalado em máquinas com o Windows XP, Windows7, Windows 8, Windows 10) nas versões 32 bits (x86) e 64 bits (x64).  Eu testei diversas versões de 32 bits e 64 bits do Microsoft SQL Server nos últimos 30 dias. 

    Boa noite


    Ana Gauna - Senior Systems Analyst [MCSE] [MCDBA] [CCNA2] - Skype: amgauna


    • Editado Ana Gauna quinta-feira, 14 de abril de 2016 23:49
    • Marcado como Resposta ClaytonSouza segunda-feira, 18 de abril de 2016 18:27
    quinta-feira, 14 de abril de 2016 23:48

Todas as Respostas

  • Clayton,

    Você pode utilizar os próprios recursos existentes no Management Studio para realizar este tipo de importação/exportação de dados.

    Este link vai te ajudar: https://msdn.microsoft.com/en-us/library/ms140052.aspx

    Inclusive se você quiser pode também utilizar o SSIS ou SQL Server Data Tools para realizar este procedimento.

    https://social.technet.microsoft.com/Forums/pt-BR/20659b4f-996f-4841-86b5-931f41389da4/sql-server-data-tools-business-intelligence-for-visual-studio-2012?forum=sqlintegrationservices


    Pedro Antonio Galvao Junior [MVP | MCC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    • Marcado como Resposta ClaytonSouza quinta-feira, 14 de abril de 2016 13:57
    • Não Marcado como Resposta ClaytonSouza quinta-feira, 14 de abril de 2016 13:57
    • Marcado como Resposta ClaytonSouza quinta-feira, 14 de abril de 2016 14:24
    quinta-feira, 14 de abril de 2016 13:52
  • Clayton,

    Você pode utilizar os próprios recursos existentes no Management Studio para realizar este tipo de importação/exportação de dados.



    Pedro Antonio Galvao Junior [MVP | MCC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    Obrigado Junior.

    Esse procedimento gera algum script? Quem realiza essas operacoes aqui na empresa é o departamento de ServiceDesk, eu, no desenvolvimento, gero os script e procedures para rodar no cliente.

    Usando essas ferramentas que voce me aponto, nao existe o perigo de derrubar o banco?
    quinta-feira, 14 de abril de 2016 13:57
  • Isso não pode ser feito com o banco de dados ativo, funcionando, com várias pessoas com login ativo utilizando.  Se ocorrer um erro durante essa tarefa poderá perder toda ou parte da informação armazenada.  O banco de dados SQL Server tem que estar offline para uma importação e exportação de dados ser feita. Não é seguro fazer com ele online, com pessoas utilizando ao mesmo tempo.  

    Idem quanto ao Microsoft Access, para importação e exportação de dados também não pode ter várias pessoas utilizando o banco  de dados, ao mesmo tempo.  

    Bom dia


    Ana Gauna - Senior Systems Analyst [MCSE] [MCDBA] [CCNA2] - Skype: amgauna


    • Editado Ana Gauna quinta-feira, 14 de abril de 2016 14:08
    • Marcado como Resposta ClaytonSouza quinta-feira, 14 de abril de 2016 14:24
    quinta-feira, 14 de abril de 2016 13:58
  • Isso não pode ser feito com o banco de dados ativo, funcionando, com várias pessoas com login ativo utilizando.  Se ocorrer um erro durante essa tarefa poderá perder toda ou parte da informação armazenada.  O banco de dados SQL Server tem que estar offline para uma importação e exportação de dados ser feita. Não é seguro fazer com ele online, com pessoas utilizando ao mesmo tempo.  

    Idem quanto ao Microsoft Access, para importação e exportação de dados também não pode ter várias pessoas utilizando o banco  de dados, ao mesmo tempo.  

    Bom dia


    Ana Gauna - Senior Systems Analyst [MCSE] [MCDBA] [CCNA2] - Skype: amgauna


    Entendi Ana.

    Essa execução ocorrerá em um final de semana , então esse problema é praticamente inexistente.

    Obrigado pela resposta

    quinta-feira, 14 de abril de 2016 14:24
  • Clayton,

    Você pode sim gerar scripts com qualquer uma das ferramentas.


    Pedro Antonio Galvao Junior [MVP | MCC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    quinta-feira, 14 de abril de 2016 15:49
  • Isso não pode ser feito com o banco de dados ativo, funcionando, com várias pessoas com login ativo utilizando.  Se ocorrer um erro durante essa tarefa poderá perder toda ou parte da informação armazenada.  O banco de dados SQL Server tem que estar offline para uma importação e exportação de dados ser feita. Não é seguro fazer com ele online, com pessoas utilizando ao mesmo tempo.  

    Idem quanto ao Microsoft Access, para importação e exportação de dados também não pode ter várias pessoas utilizando o banco  de dados, ao mesmo tempo.  

    Bom dia


    Ana Gauna - Senior Systems Analyst [MCSE] [MCDBA] [CCNA2] - Skype: amgauna


    Ana,

    Me desculpe mas o que você esta falando não tem o menor sentido!!! Não estamos falando de restauração de banco de dados, estamos falando de importação, isso é possível sim se realizar com o banco de dados online, alias o restore também é feito com o banco de dados online, só não pode ter usuários conectados.

    Acredito que seja necessário rever o que você esta querendo argumentar, pois não é assim que o SQL Server trabalha, não podemos comparar de forma alguma o SQL Server com o Access.


    Pedro Antonio Galvao Junior [MVP | MCC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    quinta-feira, 14 de abril de 2016 15:51
  • Clayton,

    A observação que a Ana fez não se aplica a sua necessidade, muito menos ao comportamento do Microsoft SQL Server, o processo de importação / exportação de dados tem que ser feito e vai ser feito com a base de dados ativa, uma base de dados Offline no SQL Server representa uma base sem permissão de acesso, não representa uma base de dados sem usuários conectados.

    Um banco de dados Offline não poderá ser acesso para este tipo de cenário, por isso o mesmo tem que estar Online, mesmo sendo um processo de restore a base de dados deve e estará online, não poder ter usuários conectados, isso não pode.


    Pedro Antonio Galvao Junior [MVP | MCC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    quinta-feira, 14 de abril de 2016 15:53
  • Junior,

    Eu realmente sou um MCSE MCDBA do ano 2000, e  eu já fiz esse trabalho de importação e exportação de dados, há vários anos atrás.  Eu leio este site do TechNet e MSDN, eu faço o meu login aqui dentro já tem dezenas de anos, desde a época do Internet Explorer 4, eu apenas não queria perder o meu tempo escrevendo nada aqui dentro, anos atrás, porque eu trabalhava demais em tempo integral atendendo diversos usuários administrativos pessoalmente, no meu ex-emprego.

    O senhor conhece usuários? Eu conheço muito bem.  Eu já fiz esse trabalho vários anos atrás.  Existe usuários que não obedecem e querem continuar trabalhando executando o trabalho deles.  Esses usuários tem que ser "derrubados" a força, quem faz isso normalmente são usuários administrativos, que não entendem nada de técnica.  Eu já fiz esse trabalho antes, vários anos atrás, com informações de departamento pessoal e contabilidade e financeiro.  Tendo usuário utilizando ao mesmo tempo, a exportação/importação tem erro ela é feita incompleta.  Eu já vi isso acontecer, a primeira vista parece que tudo funcionou, mas ao conferir os dados, se verifica que ele ficou incompleto.  Parte da informação não entrou dentro do arquivo.  Não pode ter ninguém utilizando. 

    Tem usuário administrativo que não "obedece" os técnicos porque ele é o chefe de setor, por exemplo, por isso tem que estar "offline" o banco de dados para obrigar ele (usuário chefe) a não utilizar o banco de dados ao mesmo tempo da importação/exportação de dados.

    Bom dia


    Ana Gauna - Senior Systems Analyst [MCSE] [MCDBA] [CCNA2] - Skype: amgauna




    • Editado Ana Gauna quinta-feira, 14 de abril de 2016 16:13
    quinta-feira, 14 de abril de 2016 15:58
  • Senhorita Ana,

    Conhecer usuários eu conheço vários e milhares nestes meus 22 anos de carreira, não me venha com este papo.

    Se não funcionou é porque algo não deu certo, mas você dizer que o SQL Server trabalha desta forma, me desculpe é melhor rever o que esta falando.

    Eu trabalho com SQL Server desde a versão 7.0 isso melhor dizendo desde desde os anos 2000, existem milhares de cenários e considerações que temos que analisar, mas colocar que é um comportamento padrão de um produto não é correto. Outra coisa, você sempre coloca a culpa nos usuários, mas será que a culpa não é de quem esta liderando e orientando os mesmos.

    Eu trabalho em um instituto de pesquisa parte integrante de uma multinacional presente em quase 50 países do mundo, com bases de dados entre 10Gbs, 100Gbs, 500Gbs, 1Tbs ou 2Tbs e este tipo de importação ocorrer constantemente em todos os usuários trabalhando, mas sempre de uma maneira planejada, organizada e acima de tudo testada antes de colocar em uso.

    Acredito que é bom pensar antes de colocar as coisas em práticas, talvez isso esteja faltandos para os usuários ao qual você se referi.

    Outra coisa não confunda banco de dados OffLine com banco de dados sem usuários acessando, esse conceito e contexto não se aplicada desta forma no SQL Server.


    Pedro Antonio Galvao Junior [MVP | MCC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]


    quinta-feira, 14 de abril de 2016 16:06
  • Junior,

    Comigo funcionou, anos atrás.  Tanto funcionou, que eu fiquei trabalhando na empresa durante 23 anos direto. Eu sai de lá, foi porque eu pedi para sair, tive stress.  Mas atualmente o meu stress é igual a zero%.

    Eu opto sempre é pelo mais seguro.  Não é seguro fazer com o banco de dados online, e a versão client-server do banco de dados SQL (instalada em um Windows de usuário comum) não tem a opção de fazer o banco de dados ficar offline.  

    Essa opção de fazer o banco de dados do Microsoft SQL Server ficar offline só existe dentro da versão Microsoft SQL SERVER instalada dentro do servidor WINDOWS SERVER.  Era isso o que eu utilizei, durante vários anos.  

    Bom dia



    Ana Gauna - Senior Systems Analyst [MCSE] [MCDBA] [CCNA2] - Skype: amgauna




    • Editado Ana Gauna quinta-feira, 14 de abril de 2016 16:27
    quinta-feira, 14 de abril de 2016 16:24
  • O_o


    Marcos SJ

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    quinta-feira, 14 de abril de 2016 17:19
  • Clayton,

    Você pode sim gerar scripts com qualquer uma das ferramentas.


    Pedro Antonio Galvao Junior [MVP | MCC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]


    Obrigado Pedro
    quinta-feira, 14 de abril de 2016 17:31
  • O Microsoft SQL Server  existe em 2 versões:  SERVER (Microsoft SQL Server 2016 Candidate2 para ser instalado em máquinas com o Microsoft Windows Server instalado) e CLIENT-SERVER (Microsoft SQL 2012 Express para ser instalado em máquinas com o Windows XP, Windows7, Windows 8, Windows 10) nas versões 32 bits (x86) e 64 bits (x64).  Eu testei diversas versões de 32 bits e 64 bits do Microsoft SQL Server nos últimos 30 dias. 

    Boa noite


    Ana Gauna - Senior Systems Analyst [MCSE] [MCDBA] [CCNA2] - Skype: amgauna


    • Editado Ana Gauna quinta-feira, 14 de abril de 2016 23:49
    • Marcado como Resposta ClaytonSouza segunda-feira, 18 de abril de 2016 18:27
    quinta-feira, 14 de abril de 2016 23:48