[firebase-br] Atualização Banco Firabird "a quente"

Gladiston Santana gladiston em vidy.com.br
Ter Mar 3 15:48:09 -03 2020


Matias,

A moda antiga não é, antigamente numa galaxia muito muito distante, havia
uma princesa chamada sybase que mais tarde se casou com um plebeu chamado
Microsoft  e deu a luz um filho chamado MSSQL, igual aos da sua geração era
cheio de limitações comparado às gerações de milenium atuais, converter
dados por exemplo, não tinha atalhos e era um saco, mas funcionava e nunca
nenhum sistema parou por causa de conversão, você cria um campo novo,
transfere a informação antiga (já modificada) para o novo campo e depois
renomeava trocando o nomes de lugar, as vezes não era nem 'converter' era
apenas aumentar. Dessa forma, em  geral, um único UPDATE resolvia o
problema para a tabela inteira. Claro, os usuarios conectados percebiam uma
certa lentidão causada pelo LOCK, mas ninguem (ou quase ninguem) sabia o
motivo.
Se alguém aí lembra das primeiras versões do MSSQL, não podíamos nem dropar
campos em desuso, tendo que conviver com eles pelo resto da vida. Eram
assim as conversões de campos e tipos naquela época.  Os bancos melhoraram
muito desde então, mas o método 'old school' ainda funciona para empresas
que querem parar o mínimo possível.
É perfeitamente possivel copiar tabela a tabela, mas é osso em base de
dados grande, eu tive que converter MSSQL para FB, e naquela época um
programa de conversão foi necessário porque a informação de origem tinha
que ser transformada ou desdobrada no que estavamos criando no FB.
Para o seu problema, minha opinião o melhor mesmo é atuar no database
existente, aplicando um script DDL para deixa-lo atualizado com versão
corrente e aplicando os insert/updates necessários.

[]´s

Em qui., 27 de fev. de 2020 às 12:31, Matias Moretti <
matiassmoretti em gmail.com> escreveu:

> Hoje infelizmente fazemos atualizacoes a moda antiga, agendamos com o
> cliente, no dia, paramos o servico, renomeamos a base, backup, restore,
> convertemos e depois voltamos tudo... uma simples conversao pode levar dias
> horas pois a base é grande. esse processo que preciso agilizar! por isso
> quero ver uma forma de converter com a base em funcionamento sem parar mas
> nao sei os problemas que isso pode causar pois nunca fiz.
>
> Deu para entender o cenario?
>
> On Thu, 27 Feb 2020 at 08:54 Éder Monteiro do Nascimento <
> fator em aliancati.com> wrote:
>
> > Cara, o quanto sua atualização demora?
> > Aqui nos sistemas da empresa, a gente sempre está fazendo grande
> quantidade
> > de atualizações no banco, mas a gente sempre abre uma conexão exclusiva,
> e
> > atualiza. Atualizar como o banco com outras conexões para mim pelo
> menos, é
> > esparro.
> > Em geral, nos scripts gigantescos, que incluem inserção de uns 10.000
> > registros, alteração de procedures, criação de views, e etc, que costuma
> > demorar cerca de 5 a 10 minutos.
> > isso eu estou falando de arquivos texto (script) de 3 , 5 , 8 megas.
> > É muita coisa e é rapido.
> > Seu sistema não consegue ficar 5 minutos indisponível?
> > Já pensou em agendar as atualizações para madrugada? Onde imagino que o
> > sistema deve estar sendo pouco acessado.
> >
> >
> > Em qua., 26 de fev. de 2020 às 09:17, Carlos H. Cantu <
> > listas em warmboot.com.br> escreveu:
> >
> > > O ideal é fazer atualizações de DDL em conexões exclusivas. Se isso
> > > realmente não é possível, no caso de atualizações de procedures, você
> > > pode tentar faze-las usando transações configuradas como "wait". Isso
> > > deve reduzir ou eliminar os erros de "objeto em uso" nas atualizações
> > > de procedures.
> > >
> > > Particularmente, não gosto de fazer atualizações de estrutura com
> > > conexões ativas pois pode gerar situações estranhas, onde em um mesmo
> > > momento, conexões podem enxergar versões diferentes do objeto.
> > >
> > > []s
> > > Carlos H. Cantu
> > > eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
> > > www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
> > >
> > > MM> Boa Tarde amigos, hoje faço atualizações nos meus clientes
> > > obrigando-os a
> > > MM> parar por algumas horas em virtude de muitas stored procedures, mas
> > > esta
> > > MM> situação esta me causando problemas, então gostaria de começar a
> > fazer
> > > MM> atualizações de estrutura e de dados "a quente", sem precisar
> parar o
> > > banco
> > > MM> de dados, para isso vou começar a criar versões diferentes das
> > > procedures
> > > MM> mas estou preocupado com o restante.
> > >
> > > MM> Os amigos poderiam me indicar quais os tipos de alterações que
> posso
> > > ou não
> > > MM> fazer a quente?
> > >
> > > MM> Criar versões das stored procedures é uma boa saída? Como costumam
> > > manter
> > > MM> as bases atualizadas sem parar as mesmas?
> > >
> > > MM> Muito obrigado
> > >
> > > MM> Matias Moretti
> > > MM> ______________________________________________
> > > MM> FireBase-BR (www.firebase.com.br) - Hospedado em
> www.locador.com.br
> > > MM> Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > MM> http://www.firebase.com.br/fb/artigo.php?id=1107
> > > MM> Para consultar mensagens antigas:
> > > MM> http://www.firebase.com.br/pesquisa_lista.html
> > >
> > >
> > > ______________________________________________
> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > Para consultar mensagens antigas:
> > > http://www.firebase.com.br/pesquisa_lista.html
> > >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas:
> > http://www.firebase.com.br/pesquisa_lista.html
> >
> --
>
>
> *Matias Moretti**** *matiassmoretti em gmail.com
> <desenvolvimento em sistemanavis.com.br>*
>
> *Antes de imprimir, pense em sua responsabilidade e compromisso com o meio
> ambiente.*
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas:
> http://www.firebase.com.br/pesquisa_lista.html
>


-- 
A Vidy possui um Sistema de Gestão da Qualidade estruturado e com
Certificação ISO 9001 há mais de 10 anos, mantendo seu foco na Qualidade e
na Melhoria Continua.

Em março de2018 migramos com sucesso para a nova versão da ISO 9001.

Somos a única Empresa Brasileira de Engenharia de Laboratórios com
certificação com o Escopo Completo; desde Projetos, Engenharia, Construção,
Fabricação e Instalação de Laboratórios.



Mais detalhes sobre a lista de discussão lista