SlideShare uma empresa Scribd logo
1 de 12
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
Liquibase
DOJO
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
DROPS
http://cwisoftware.github.io/drops/evolucao-de-banco-de-dados-na-integracao-continua
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
Application Code
Como fazer isso para banco de dados?
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
• Gerenciar scripts
• Documentação
• Permitir branches e merges
• Evitar erros de execução de scripts
• Otimizar o deploy
• Facilitar o rollback
• Validações
• Regras por contexto
• Outras ferramentas
• Database novo ou existente
Liquibase
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
• Premissas
• DB deve estar criado
• Login com permissão para criar objetos
• Case sensitive
• UTF-8
Liquibase
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
• Changelogs
• Changesets
• Databases
• Lib
• Changelog-master.xml
• Database.ps1
• README.md
Liquibase - Estrutura
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
• Estrutura
• ChangeSet com arquivo SQL
• ChangeSet com notação XML
• ChangeSet SQL InLine
• Comandos
• Validar o changelog
• liquibase --defaultsFile=databases/dsv.properties --changeLogFile=changelog-master.xml validate
• Verificar status
• liquibase --defaultsFile=databases/dsv.properties --changeLogFile=changelog-master.xml status
• Atualizar banco
• liquibase --defaultsFile=databases/dsv.properties --changeLogFile=changelog-master.xml update
Scripts da versão 1.0.0
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
• runAlways
• Context
• loadData
• loadUpdateData
Scripts da versão 2.0.0
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
• Plug-in LiquiBaseRunner
Liquibase & CI
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
Linha de Comando
Liquibase & CI
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
Corrigindo o Checksum Alteram um changeset
já aplicado!
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul
Obrigado
Giovani Decusati
giovani@cwi.com.br

Mais conteúdo relacionado

Destaque

Tour río sarapiquí David Morales- Diego Rodrigueez
Tour río sarapiquí David Morales- Diego RodrigueezTour río sarapiquí David Morales- Diego Rodrigueez
Tour río sarapiquí David Morales- Diego RodrigueezdaVMorales
 
Teamwork jpg-161026031222
Teamwork jpg-161026031222Teamwork jpg-161026031222
Teamwork jpg-161026031222Louise Gore
 
1 obz a_2014
1 obz a_20141 obz a_2014
1 obz a_2014ychross
 
Nomina de los participantes 2 etapa
Nomina  de los participantes 2 etapaNomina  de los participantes 2 etapa
Nomina de los participantes 2 etapaMaria Ortega
 
Niños de cinco años
Niños  de cinco años Niños  de cinco años
Niños de cinco años Natalia Pardo
 
Curso Integral De Computación e Informática
Curso Integral De Computación e Informática Curso Integral De Computación e Informática
Curso Integral De Computación e Informática silvana alzamora
 
Calentamiento global
Calentamiento global  Calentamiento global
Calentamiento global gabyde_paula
 
Financiamiento para la innovación por Julio Casillas para ScalingUp-LatAm
Financiamiento para la innovación por Julio Casillas para ScalingUp-LatAm Financiamiento para la innovación por Julio Casillas para ScalingUp-LatAm
Financiamiento para la innovación por Julio Casillas para ScalingUp-LatAm Ramon Scott
 
Nuevo documento de microsoft word
Nuevo documento de microsoft wordNuevo documento de microsoft word
Nuevo documento de microsoft wordBrisaLondon
 

Destaque (15)

Tour río sarapiquí David Morales- Diego Rodrigueez
Tour río sarapiquí David Morales- Diego RodrigueezTour río sarapiquí David Morales- Diego Rodrigueez
Tour río sarapiquí David Morales- Diego Rodrigueez
 
Rem arturo canto rebora
Rem arturo canto reboraRem arturo canto rebora
Rem arturo canto rebora
 
Teamwork jpg-161026031222
Teamwork jpg-161026031222Teamwork jpg-161026031222
Teamwork jpg-161026031222
 
Hcl technologies
Hcl technologiesHcl technologies
Hcl technologies
 
1 obz a_2014
1 obz a_20141 obz a_2014
1 obz a_2014
 
Nomina de los participantes 2 etapa
Nomina  de los participantes 2 etapaNomina  de los participantes 2 etapa
Nomina de los participantes 2 etapa
 
Niños de cinco años
Niños  de cinco años Niños  de cinco años
Niños de cinco años
 
Curso Integral De Computación e Informática
Curso Integral De Computación e Informática Curso Integral De Computación e Informática
Curso Integral De Computación e Informática
 
Jorge enrique-a doum
Jorge enrique-a doumJorge enrique-a doum
Jorge enrique-a doum
 
Calentamiento global
Calentamiento global  Calentamiento global
Calentamiento global
 
Financiamiento para la innovación por Julio Casillas para ScalingUp-LatAm
Financiamiento para la innovación por Julio Casillas para ScalingUp-LatAm Financiamiento para la innovación por Julio Casillas para ScalingUp-LatAm
Financiamiento para la innovación por Julio Casillas para ScalingUp-LatAm
 
Nuevo documento de microsoft word
Nuevo documento de microsoft wordNuevo documento de microsoft word
Nuevo documento de microsoft word
 
1 om1 v
1 om1 v1 om1 v
1 om1 v
 
1 ry k
1 ry k1 ry k
1 ry k
 
Opo x-breikki
Opo x-breikkiOpo x-breikki
Opo x-breikki
 

Semelhante a Dojo :: Liquibase

Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPArlindo Santos
 
Arquitetura SQL Server
Arquitetura SQL ServerArquitetura SQL Server
Arquitetura SQL ServerRaul Oliveira
 
SQL Server Heterogêneo: SQL Server + BigData
SQL Server Heterogêneo: SQL Server + BigDataSQL Server Heterogêneo: SQL Server + BigData
SQL Server Heterogêneo: SQL Server + BigDataRodrigo Dornel
 
Arquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLArquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLRaul Oliveira
 
Desenvolvendo uma aplicacao Full Javascript
Desenvolvendo uma aplicacao Full JavascriptDesenvolvendo uma aplicacao Full Javascript
Desenvolvendo uma aplicacao Full JavascriptDenis Vieira
 
SQLite: um motor de bases de dados relacional open source
SQLite: um motor de bases de dados relacional open sourceSQLite: um motor de bases de dados relacional open source
SQLite: um motor de bases de dados relacional open sourceLuis Borges Gouveia
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Marcos William Valentini
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Marcos William Valentini
 
Aula9-Spark-Básico sematix com dataframes
Aula9-Spark-Básico sematix com dataframesAula9-Spark-Básico sematix com dataframes
Aula9-Spark-Básico sematix com dataframesronaldorclamaster21
 
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...Amazon Web Services LATAM
 
SQL Day 2016 - SQL Server x Oracle
SQL Day 2016 - SQL Server x OracleSQL Day 2016 - SQL Server x Oracle
SQL Day 2016 - SQL Server x OracleFlávio Farias
 
Palestra DataFlow - II São Paulo Perl Workshop
Palestra DataFlow - II São Paulo Perl WorkshopPalestra DataFlow - II São Paulo Perl Workshop
Palestra DataFlow - II São Paulo Perl WorkshopAlexei Znamensky
 
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariaisRuby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariaisRodrigo Recio
 
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon RedshiftPath to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon RedshiftAmazon Web Services LATAM
 
JBoss-WildFly - Avançado
JBoss-WildFly - AvançadoJBoss-WildFly - Avançado
JBoss-WildFly - AvançadoAdriano Schmidt
 
AspNet 5 & Redis - Escalando sua performance
AspNet 5 & Redis - Escalando sua performanceAspNet 5 & Redis - Escalando sua performance
AspNet 5 & Redis - Escalando sua performanceJosé Roberto Araújo
 

Semelhante a Dojo :: Liquibase (20)

2012 - Veris - DBA Career and Oracle Database
2012 - Veris - DBA Career and Oracle Database2012 - Veris - DBA Career and Oracle Database
2012 - Veris - DBA Career and Oracle Database
 
Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHP
 
Arquitetura SQL Server
Arquitetura SQL ServerArquitetura SQL Server
Arquitetura SQL Server
 
SQL Server Heterogêneo: SQL Server + BigData
SQL Server Heterogêneo: SQL Server + BigDataSQL Server Heterogêneo: SQL Server + BigData
SQL Server Heterogêneo: SQL Server + BigData
 
Arquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLArquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQL
 
Desenvolvendo uma aplicacao Full Javascript
Desenvolvendo uma aplicacao Full JavascriptDesenvolvendo uma aplicacao Full Javascript
Desenvolvendo uma aplicacao Full Javascript
 
SQLite: um motor de bases de dados relacional open source
SQLite: um motor de bases de dados relacional open sourceSQLite: um motor de bases de dados relacional open source
SQLite: um motor de bases de dados relacional open source
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
 
Aula9-Spark-Básico sematix com dataframes
Aula9-Spark-Básico sematix com dataframesAula9-Spark-Básico sematix com dataframes
Aula9-Spark-Básico sematix com dataframes
 
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
 
Cake PHP
Cake PHPCake PHP
Cake PHP
 
SQL Day 2016 - SQL Server x Oracle
SQL Day 2016 - SQL Server x OracleSQL Day 2016 - SQL Server x Oracle
SQL Day 2016 - SQL Server x Oracle
 
Palestra DataFlow - II São Paulo Perl Workshop
Palestra DataFlow - II São Paulo Perl WorkshopPalestra DataFlow - II São Paulo Perl Workshop
Palestra DataFlow - II São Paulo Perl Workshop
 
Java web
Java webJava web
Java web
 
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariaisRuby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
 
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon RedshiftPath to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
 
JBoss-WildFly - Avançado
JBoss-WildFly - AvançadoJBoss-WildFly - Avançado
JBoss-WildFly - Avançado
 
AspNet 5 & Redis - Escalando sua performance
AspNet 5 & Redis - Escalando sua performanceAspNet 5 & Redis - Escalando sua performance
AspNet 5 & Redis - Escalando sua performance
 
Aula 1 apresentação
Aula 1   apresentaçãoAula 1   apresentação
Aula 1 apresentação
 

Dojo :: Liquibase

  • 1. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul Liquibase DOJO
  • 2. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul DROPS http://cwisoftware.github.io/drops/evolucao-de-banco-de-dados-na-integracao-continua
  • 3. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul Application Code Como fazer isso para banco de dados?
  • 4. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul • Gerenciar scripts • Documentação • Permitir branches e merges • Evitar erros de execução de scripts • Otimizar o deploy • Facilitar o rollback • Validações • Regras por contexto • Outras ferramentas • Database novo ou existente Liquibase
  • 5. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul • Premissas • DB deve estar criado • Login com permissão para criar objetos • Case sensitive • UTF-8 Liquibase
  • 6. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul • Changelogs • Changesets • Databases • Lib • Changelog-master.xml • Database.ps1 • README.md Liquibase - Estrutura
  • 7. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul • Estrutura • ChangeSet com arquivo SQL • ChangeSet com notação XML • ChangeSet SQL InLine • Comandos • Validar o changelog • liquibase --defaultsFile=databases/dsv.properties --changeLogFile=changelog-master.xml validate • Verificar status • liquibase --defaultsFile=databases/dsv.properties --changeLogFile=changelog-master.xml status • Atualizar banco • liquibase --defaultsFile=databases/dsv.properties --changeLogFile=changelog-master.xml update Scripts da versão 1.0.0
  • 8. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul • runAlways • Context • loadData • loadUpdateData Scripts da versão 2.0.0
  • 9. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul • Plug-in LiquiBaseRunner Liquibase & CI
  • 10. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul Linha de Comando Liquibase & CI
  • 11. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul Corrigindo o Checksum Alteram um changeset já aplicado!
  • 12. São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul Obrigado Giovani Decusati giovani@cwi.com.br

Notas do Editor

  1. https://www.mssqltips.com/sqlservertip/4340/sql-server-database-change-management-with-liquibase/
  2. Saber o autor, data e hora da execução do script, o momento em que ele foi aplicado; É possível colocar comentários nos arquivos; Devido a sua estrutura ser baseada em arquivos textos (XML, YAML, JSON e SQL); O versionamento do schema é feito pela própria ferramenta então ela identifica quais scripts devem ser rodados; A aplicação dos scripts é executada com apenas uma linha de commando evitando horas e horas de um DBA; Para cada instrução SQL é possível escrever uma rotina de Rollback; É possível validar a estrutura e testar a execução dos scripts Rollout e rollback; Executar determinados scripts apenas em um ou outro ambiente; Ela pode ser usada com outras ferramentas para complementar a parte de gestão de banco de dados (EX. VSUTIO DataBase); Funciona para qualquer banco novo ou já existente;