Incompatibilidade entre Backups

28/01/2016

0

Pessoal, boa tarde! Existe algum tipo de incompatibilidade entre backups de entre os SQL Server´s, 2000, 2005, 2008, 2014, se tiver o que pode ser feito?
Mario Holanda

Mario Holanda

Responder

Post mais votado

29/01/2016

Sim, Mario... sempre é possível importar dados para versões menores, mas não via o backup nativo do Sql Server ( que é o tema de sua pergunta ).

Você tem várias alternativas, como as indicadas nos posts que lhe passei.

A mais prática, na minha opinião, é replicar a estrutura de dados e migrar as tabelas vias scripts SQL.

Marcos P

Marcos P
Responder

Mais Posts

28/01/2016

Mariana Carvalho

Acompanhando.
Responder

28/01/2016

Marcos P

Aplica-se o conceito genérico de "Compatibilidade Retroativa" nesses casos, ou seja : você consegue restaurar um backup de uma versão menor em servidor com uma versão maior.

O contrário, não funciona !

Esses links detalham melhor a questão :

TechNet01

TechNet02

iMasters
Responder

28/01/2016

Mario Holanda

Se for assim é tranquilo, mas se for o contrario, não existe nenhuma possibilidade? Extraindo dados de versão por versão, com bulk insert ou algo parecido.
Responder

28/01/2016

Mariana Carvalho

Obrigada Marcos P. :-)
Responder

29/01/2016

Mario Holanda

Beleza Marcos, questões para outros posts se for o caso, valeu pelo help! Tenha um ótimo final de semana.
Responder

29/01/2016

Mariana Carvalho

Via scripts, são processos fáceis de achar?
Responder

29/01/2016

Marcos P

A ideia é simples...

Uma vez criada a estrutura de dados, exatamente como a original, para cada tabela a ser migrada deve ser criado um SELECT INTO ( na tabela do banco de origem, para a tabela do banco de destino ).

O quê pode gerar algum trabalho adicional, além, óbvio, do volume de tabelas a serem migradas, são as constraints do banco. Mas nada que não possa ser resolvido...
Responder

29/01/2016

Jothaz

Caminho mais simples e usar a opção "Gerar Scripts" que além de gerar os scripts de criação das tabela também gera os INSERT´s.

Se for um banco de dados gigantesco pode não ser viável, então depende do cenário, mas na maioria da vezes da para usar.

[img]http://arquivo.devmedia.com.br/forum/imagem/418027-20160129-151714.png[/img]

[img]http://arquivo.devmedia.com.br/forum/imagem/418027-20160129-151724.png[/img]


Outra forma é você criar uma query que lê a tabela e gera o script e INSERT com os valores.

Eu gosto muito de uma ferramenta chamada SqlDbx que é tipo um Management Studio que se conecta a qualquer servidor SQl (oracle, SQL, PostgreSQL e etc).
Ela tem uma opção de no resultado do SELECT você gerar os INSERT´s.
Responder

03/02/2016

Mariana Carvalho

Da pra fazer tabela por tabela? Para não ficar tão complicado se o banco for grande.
Responder

05/02/2016

Mario Holanda

Da pra fazer tabela por tabela? Para não ficar tão complicado se o banco for grande.


Tambem quero saber.
Responder

05/02/2016

Jothaz

Olha se vocês acham complicado usar o assistente "Gerar Script", quando trabalharem em um ambiente de produção de uma empresa de médio ou grande
porte você vão chorar todos os dias. Na empresa que estou alocado hoje temos mais de 100 bases em dezenas de servidores, imaginem gerir tudo isto.

O cargo de DBA é trabalhoso, complicado, estressante, não admite erros e as vezes braçal. Então se querem seguir carreia preparem-se, pois o banco de dados é alma da parada.

Eu particularmente não vejo complicações em usar o "Gerar Script" e a não ser que o BD seja gigante é uma das melhores formas de atuar. É pratico, rápido e seguro.

Outros caminhos:
--Seguir a dica do Marcos P e usar SELECT INTO, dependendo do cenário poderá ser necessário criar um LinkedServer
--Ferramentas pagas tipo apexsql sql_tools_diff
--Ferramentas free DBSave Version 5.4.3
--Ferramenta da propria Microsoft para gerar script individualmente de cada tabela Microsoft SQL Server Database Publishing Wizard 1.1
--Criar uma queyr que gere os script de INSERTcom o conteúdo de uma tabela, que é um ótimo exercício para testar vosso conhecimento em SQL. Se não conseguirem eu posto um exemplo que tenho.

Bom são vários caminhos, mas se perguntar para qualquer DBA experiente ele vai sugerir usar o "Gerar Script" ou no máximo o "Microsoft SQL Server Database Publishing Wizard"

Boa diversão.
Responder

05/02/2016

Mariana Carvalho

Boa tarde Jothaz, entendeu errado quando citei
Para não ficar tão complicado se o banco for grande.
, Foi me dado uma resposta que seria complicado se o banco for grande, por isso citei "complicado".

Eu queria fazer de tabela em tabela.

A minha resposta deu a entender que estaria achando complicado o processo, mas não, rsrsrs.
Responder

05/02/2016

Jothaz

Desculpe-me, mas realmente entendi errado. E não tive intenção de desqualificar ou fazer algum tipo de admoestação. kkkk

Mas o que eu disse continua valendo não é fácil ser DBA. kkkk

Para tabela a tabela:

--Ferramenta da propria Microsoft para gerar script individualmente de cada tabela Microsoft SQL Server Database Publishing Wizard 1.1
--Criar uma queyr que gere os script de INSERTcom o conteúdo de uma tabela, que é um ótimo exercício para testar vosso conhecimento em SQL. Se não conseguirem eu posto um exemplo que tenho.

Boa tarde Jothaz, entendeu errado quando citei
Para não ficar tão complicado se o banco for grande.
, Foi me dado uma resposta que seria complicado se o banco for grande, por isso citei "complicado".

Eu queria fazer de tabela em tabela.

A minha resposta deu a entender que estaria achando complicado o processo, mas não, rsrsrs.
Responder

06/02/2016

Mariana Carvalho

Que bom que foi esclarecido, nem sempre passamos a informações corretas, o entendimento nem sempre é simple, pode ficar tranquilo, erros de entendimento são comuns a todos nós, ninguem escapa! rsrsrs.

Obrigada pelas respostas!
Responder

10/02/2016

Mario Holanda

Obrigado mesmo pessoal pelas respostas, perguntas...etc.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar