Guariento 1 Denunciar post Postado Dezembro 21, 2012 Pessoal, Estou desenvolvendo uma aplicação no meu ambiente de homologação com banco de dados MySql. E estou me deparando com a seguinte situação: como faço para inserir, atualizar ou remover colunas/tabelas do banco de dados de Produção, com base nos ajutes que venho fazendo no ambiente de Homologação. Um exemplo: em 15/12/2012 meu ambiente de produção TABELA: CLIENTE cliente_id INT PK AU nome VARCHAR(100) NOT NULL telefone VARCHAR(13) em 20/12/2012 fiz algumas alterações no meu ambiente de homologação TABELA: CLIENTE cliente_id INT PK AU nome VARCHAR(200) NOT NULL telefone VARCHAR(13) NOT NULL celular VARCHAR(13) Ou seja, no dia 20 eu modifiquei meu ambiente de homologação modificando o tamanho do campo CLIENTE.nome, não permitindo nulos no campo CLIENTE.telefone, e adicionei o campo CLIENTE.celular. Quero repassar essas mudanças para meu banco de dados de Produção assim que for lançado a próxima atualização. Existe algum aplicativo que crie todas as instruções de INSERT, UPDATE, etc. com base no meu banco de Homologação para que ele execute as modificações no meu banco de Produção? Compartilhar este post Link para o post Compartilhar em outros sites
Ricardo II 2 Denunciar post Postado Dezembro 26, 2012 O que você pode fazer é exportar os 2 banco e utilizar um programa que comprar os 2 sql gerado e ver o que ta diferente, e depois disso executar as transformações no banco de produção Compartilhar este post Link para o post Compartilhar em outros sites
Guariento 1 Denunciar post Postado Dezembro 26, 2012 Sim, é isso, ou quase isso. Basta que algum programa analise a estrutura do banco de homologação e gere as instruções SQL para executar na base de produção assim por exemplo: - Query 1 = se campo1 da tabela1 não existe na base de produção, então cria - Query 2 = se campo2 da tabela2 for diferente na base de produção, então faz ficar igual como está no banco de homologação - Query 3 = ... e assim por diante. Ou será que tudo o que eu criar de novo na base de homologação eu devo já criar a instrução SQL para depois executar na base de produção? Isso dá um trabalho da ######. Compartilhar este post Link para o post Compartilhar em outros sites
Jorge Seiki Teruya 15 Denunciar post Postado Janeiro 5, 2013 Você pode documentar as mudanças que está fazendo e depois só atualizar no banco de produção com o comando: add column ou change para atualizar os dados. No MysqlWorkbench, se estiver documentando por lá, tem a opção de sincronizar as duas bases de dados para manter ambas atualizadas. Compartilhar este post Link para o post Compartilhar em outros sites
Guariento 1 Denunciar post Postado Janeiro 5, 2013 Acho que é o jeito mesmo, anotar tudo, instrução a instrução e depois executar na base de produção. Mas bom saber que o Workbench possui este recurso de sincronismo, eu não sabia. O que diz de estar documentado, trata-se de utilizar o ERR Model certo? Você pode documentar as mudanças que está fazendo e depois só atualizar no banco de produção com o comando: add column ou change para atualizar os dados. No MysqlWorkbench, se estiver documentando por lá, tem a opção de sincronizar as duas bases de dados para manter ambas atualizadas. Compartilhar este post Link para o post Compartilhar em outros sites
Jorge Seiki Teruya 15 Denunciar post Postado Janeiro 5, 2013 No Workbench a modelagem de dados! Fica bem organizado =D Compartilhar este post Link para o post Compartilhar em outros sites