SlideShare una empresa de Scribd logo
Control de versiones de bases de datos con
Liquibase

© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Contenido
1. Situación actual
2. ¿Qué es Liquibase?
3. ¿Cómo se aplica un cambio?
4. Cambios que podemos hacer
5. Otras etiquetas

© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Situación actual
• ¿Cuál es el estado de la base de datos?
• ¿Este script está ejecutado?, ¿en qué entorno?
• ¿Está sincronizada la base de datos con el código de
la aplicación?
• Ejecución manual de scripts por parte de DBAs o
equipos de sistemas.
• Scripts dependientes de la base de datos.
• Necesito volver la base de datos a cierto estado.
• Si tengo control de versiones sobre el código, ¿lo
puedo tener también de la base de datos?
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
¿Qué es Liquibase?
• Los cambios se hacen de manera controlada.
• Tenemos un histórico de cambios aplicados.
• Podemos revertir cambios.
• Sacar diferencias.
• Generar un script inicial de una base de datos dada.
• Generar una documentación de la base de datos.
• Es independiente del DBMS.
• Integración con Maven.

© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
¿Cómo se aplica un cambio?
1. El desarrollador escribe el changeSet (XML, JSON,
SQL,…)
2. Se ejecuta Liquibase (Maven, CI, línea de
comandos)
3. Liquibase comprueba que el cambio no se ha
realizado: mira el id, autor, nombre del fichero
1. Si ya existe un cambio con el mismo id comprueba
el MD5, si son distintos da un error.

4. Aplica el cambio
5. Guarda en DATABASECHANGELOG el registro del
cambio
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Cambios que podemos hacer
Cambios que podemos
especificar:
• Delete
• Añadir un autoincremental
• Insert
• Añadir una columna
• Cargar datos
• Añadir un valor por defecto
• Borrar tabla
• Añadir una foreign key
• Borrar índice
• Añadir primary key
• Ejecutar una consulta nativa
• Añadir unique
• …
• Crear índice
• Crear prodecimiento
• Crear tabla
• Crear secuencia
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Otras etiquetas
• Definir precondiciones.
• Incluir otros changeLogs para hacer los cambios
más manejables.
• Definir un contexto para ejecutar sólo los changeSet
que queramos.
• Podemos poner comentarios

© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Enlaces de interés
• http://www.liquibase.org
•

http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=liquibase

© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Fin

Gracias por vuestra atención
¿Alguna pregunta?

Tomás Moreno Bernal (tomas.moreno@um.es)
@tmorenobernal

© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.

Más contenido relacionado

La actualidad más candente

M2i Webinar - ITIL 4, une évolution majeure du référentiel (12-04-2019)
M2i Webinar - ITIL 4, une évolution majeure du référentiel (12-04-2019)M2i Webinar - ITIL 4, une évolution majeure du référentiel (12-04-2019)
M2i Webinar - ITIL 4, une évolution majeure du référentiel (12-04-2019)
M2i Formation
 
Présentation HEC - Cloud Computing En France - Cédric Mora
Présentation HEC - Cloud Computing En France - Cédric MoraPrésentation HEC - Cloud Computing En France - Cédric Mora
Présentation HEC - Cloud Computing En France - Cédric Mora
Cédric Mora
 
Introduction à itil v3
Introduction à itil v3Introduction à itil v3
Introduction à itil v3
Renaud BROSSE
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)
Klee Group
 
ISO 20000 Procesos de Resolución
ISO 20000 Procesos de ResoluciónISO 20000 Procesos de Resolución
ISO 20000 Procesos de Resolución
itService ®
 
Webinar | Mener un projet de GED : Les 6 étapes incontournables !
Webinar | Mener un projet de GED : Les 6 étapes incontournables !Webinar | Mener un projet de GED : Les 6 étapes incontournables !
Webinar | Mener un projet de GED : Les 6 étapes incontournables !
Sollan France
 
Introducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareIntroducao a Arquitetura de Software
Introducao a Arquitetura de Software
UFPA
 
Référentiel d'architecture avec TOGAF
Référentiel d'architecture avec TOGAFRéférentiel d'architecture avec TOGAF
Référentiel d'architecture avec TOGAF
Pierre-Xavier Fouillé
 
Alphorm.com Formation le langage SQL
Alphorm.com  Formation le langage SQLAlphorm.com  Formation le langage SQL
Alphorm.com Formation le langage SQL
Alphorm
 
Introduction a la SOA
Introduction a la SOAIntroduction a la SOA
Introduction a la SOA
Tugdual Grall
 
Banco de Dados Conceitos
Banco de Dados ConceitosBanco de Dados Conceitos
Banco de Dados Conceitos
Cleber Ramos
 
Conférence - Loi 18-07 du 10 Juin 2018 : la protection des données à caractèr...
Conférence - Loi 18-07 du 10 Juin 2018 : la protection des données à caractèr...Conférence - Loi 18-07 du 10 Juin 2018 : la protection des données à caractèr...
Conférence - Loi 18-07 du 10 Juin 2018 : la protection des données à caractèr...
African Cyber Security Summit
 
Lo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICTLo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICT
Matteo Gentile
 
Chp3 - ESB
Chp3 - ESBChp3 - ESB
Chp3 - ESB
Lilia Sfaxi
 
Git e GitHub: Versionamento de Código Fácil
Git e GitHub: Versionamento de Código FácilGit e GitHub: Versionamento de Código Fácil
Git e GitHub: Versionamento de Código Fácil
Tiago Antônio da Silva
 
RBS, FBS, PBS, DBS : Breakdown Structure en ingénierie
RBS, FBS, PBS, DBS : Breakdown Structure en ingénierieRBS, FBS, PBS, DBS : Breakdown Structure en ingénierie
RBS, FBS, PBS, DBS : Breakdown Structure en ingénierie
Vincent HOLLEY
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
elliando dias
 
Introduction To Liquibase
Introduction To Liquibase Introduction To Liquibase
Introduction To Liquibase
Knoldus Inc.
 
Expo Taller ITIL V4
Expo Taller ITIL V4Expo Taller ITIL V4
Expo Taller ITIL V4
Eddie Malca
 
Etl -
Etl -Etl -

La actualidad más candente (20)

M2i Webinar - ITIL 4, une évolution majeure du référentiel (12-04-2019)
M2i Webinar - ITIL 4, une évolution majeure du référentiel (12-04-2019)M2i Webinar - ITIL 4, une évolution majeure du référentiel (12-04-2019)
M2i Webinar - ITIL 4, une évolution majeure du référentiel (12-04-2019)
 
Présentation HEC - Cloud Computing En France - Cédric Mora
Présentation HEC - Cloud Computing En France - Cédric MoraPrésentation HEC - Cloud Computing En France - Cédric Mora
Présentation HEC - Cloud Computing En France - Cédric Mora
 
Introduction à itil v3
Introduction à itil v3Introduction à itil v3
Introduction à itil v3
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)
 
ISO 20000 Procesos de Resolución
ISO 20000 Procesos de ResoluciónISO 20000 Procesos de Resolución
ISO 20000 Procesos de Resolución
 
Webinar | Mener un projet de GED : Les 6 étapes incontournables !
Webinar | Mener un projet de GED : Les 6 étapes incontournables !Webinar | Mener un projet de GED : Les 6 étapes incontournables !
Webinar | Mener un projet de GED : Les 6 étapes incontournables !
 
Introducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareIntroducao a Arquitetura de Software
Introducao a Arquitetura de Software
 
Référentiel d'architecture avec TOGAF
Référentiel d'architecture avec TOGAFRéférentiel d'architecture avec TOGAF
Référentiel d'architecture avec TOGAF
 
Alphorm.com Formation le langage SQL
Alphorm.com  Formation le langage SQLAlphorm.com  Formation le langage SQL
Alphorm.com Formation le langage SQL
 
Introduction a la SOA
Introduction a la SOAIntroduction a la SOA
Introduction a la SOA
 
Banco de Dados Conceitos
Banco de Dados ConceitosBanco de Dados Conceitos
Banco de Dados Conceitos
 
Conférence - Loi 18-07 du 10 Juin 2018 : la protection des données à caractèr...
Conférence - Loi 18-07 du 10 Juin 2018 : la protection des données à caractèr...Conférence - Loi 18-07 du 10 Juin 2018 : la protection des données à caractèr...
Conférence - Loi 18-07 du 10 Juin 2018 : la protection des données à caractèr...
 
Lo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICTLo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICT
 
Chp3 - ESB
Chp3 - ESBChp3 - ESB
Chp3 - ESB
 
Git e GitHub: Versionamento de Código Fácil
Git e GitHub: Versionamento de Código FácilGit e GitHub: Versionamento de Código Fácil
Git e GitHub: Versionamento de Código Fácil
 
RBS, FBS, PBS, DBS : Breakdown Structure en ingénierie
RBS, FBS, PBS, DBS : Breakdown Structure en ingénierieRBS, FBS, PBS, DBS : Breakdown Structure en ingénierie
RBS, FBS, PBS, DBS : Breakdown Structure en ingénierie
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Introduction To Liquibase
Introduction To Liquibase Introduction To Liquibase
Introduction To Liquibase
 
Expo Taller ITIL V4
Expo Taller ITIL V4Expo Taller ITIL V4
Expo Taller ITIL V4
 
Etl -
Etl -Etl -
Etl -
 

Similar a En 20 minutos ...Control de Cambios de la BD con Liquibase

Gestión de Cambios de BBDD con LiquiBase
Gestión de Cambios de BBDD con LiquiBaseGestión de Cambios de BBDD con LiquiBase
Gestión de Cambios de BBDD con LiquiBase
Paulo Clavijo
 
Moodlemoot spain 2013. actualización a moodle 2 enfoque técnico
Moodlemoot spain 2013. actualización a moodle 2  enfoque técnicoMoodlemoot spain 2013. actualización a moodle 2  enfoque técnico
Moodlemoot spain 2013. actualización a moodle 2 enfoque técnico
Juan Leyva Delgado
 
An evening with... Liquidbase
An evening with... LiquidbaseAn evening with... Liquidbase
An evening with... Liquidbase
Arkhotech
 
Desarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nubeDesarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nube
Daniel Cruz
 
Software Libre-2023 PRESENTACIÓN SISTEMAS.pptx
Software Libre-2023 PRESENTACIÓN SISTEMAS.pptxSoftware Libre-2023 PRESENTACIÓN SISTEMAS.pptx
Software Libre-2023 PRESENTACIÓN SISTEMAS.pptx
janicemamani2019
 
Tutorial etabsv8
Tutorial etabsv8Tutorial etabsv8
Tutorial etabsv8
doggymessi
 
Arquitectura de referencia corregido
Arquitectura de referencia corregidoArquitectura de referencia corregido
Arquitectura de referencia corregido
Jose Torres Gonzales
 
22512051 Servicios
22512051 Servicios22512051 Servicios
22512051 Servicios
caroarias91
 
Tratamiento de seguridad en aplicaciones
Tratamiento de seguridad en aplicacionesTratamiento de seguridad en aplicaciones
Tratamiento de seguridad en aplicaciones
ayreonmx
 
Capítulo 2 todo se vuelve programable v1
Capítulo 2 todo se vuelve programable v1Capítulo 2 todo se vuelve programable v1
Capítulo 2 todo se vuelve programable v1
UNIVERSIDAD PERUANA DE INVESTIGACIÓN Y NEGOCIOS
 
Guia01 control versiones
Guia01 control versionesGuia01 control versiones
Guia01 control versiones
GuadalupeLopezLeyva
 
U1 Control de versiones.pdf
U1 Control de versiones.pdfU1 Control de versiones.pdf
U1 Control de versiones.pdf
Eric Quiñones
 
S14-DAW-2022S1.pptx
S14-DAW-2022S1.pptxS14-DAW-2022S1.pptx
S14-DAW-2022S1.pptx
Luis Fernando Aguas Bucheli
 
Release note 4.0
Release note 4.0Release note 4.0
Release note 4.0
Pablo
 
El uso correcto de MySQLi
El uso correcto de MySQLi El uso correcto de MySQLi
El uso correcto de MySQLi
Arsys
 
Aplicaciones web altamente escalables con Redis
Aplicaciones web altamente escalables con RedisAplicaciones web altamente escalables con Redis
Aplicaciones web altamente escalables con Redis
Alberto Gimeno
 
Sistemas gestores de base de datos (sgbd)
Sistemas gestores de base de datos (sgbd)Sistemas gestores de base de datos (sgbd)
Sistemas gestores de base de datos (sgbd)
Henry Cumbicus Rivera
 
Semana 4 control de versiones planificacion y gestion
Semana 4 control de versiones planificacion y gestionSemana 4 control de versiones planificacion y gestion
Semana 4 control de versiones planificacion y gestion
Giovani Ramirez
 
Tp n°2 parte a
Tp n°2 parte aTp n°2 parte a
Tp n°2 parte a
santyxxs
 
Metacoretex
MetacoretexMetacoretex
Metacoretex
Conferencias FIST
 

Similar a En 20 minutos ...Control de Cambios de la BD con Liquibase (20)

Gestión de Cambios de BBDD con LiquiBase
Gestión de Cambios de BBDD con LiquiBaseGestión de Cambios de BBDD con LiquiBase
Gestión de Cambios de BBDD con LiquiBase
 
Moodlemoot spain 2013. actualización a moodle 2 enfoque técnico
Moodlemoot spain 2013. actualización a moodle 2  enfoque técnicoMoodlemoot spain 2013. actualización a moodle 2  enfoque técnico
Moodlemoot spain 2013. actualización a moodle 2 enfoque técnico
 
An evening with... Liquidbase
An evening with... LiquidbaseAn evening with... Liquidbase
An evening with... Liquidbase
 
Desarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nubeDesarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nube
 
Software Libre-2023 PRESENTACIÓN SISTEMAS.pptx
Software Libre-2023 PRESENTACIÓN SISTEMAS.pptxSoftware Libre-2023 PRESENTACIÓN SISTEMAS.pptx
Software Libre-2023 PRESENTACIÓN SISTEMAS.pptx
 
Tutorial etabsv8
Tutorial etabsv8Tutorial etabsv8
Tutorial etabsv8
 
Arquitectura de referencia corregido
Arquitectura de referencia corregidoArquitectura de referencia corregido
Arquitectura de referencia corregido
 
22512051 Servicios
22512051 Servicios22512051 Servicios
22512051 Servicios
 
Tratamiento de seguridad en aplicaciones
Tratamiento de seguridad en aplicacionesTratamiento de seguridad en aplicaciones
Tratamiento de seguridad en aplicaciones
 
Capítulo 2 todo se vuelve programable v1
Capítulo 2 todo se vuelve programable v1Capítulo 2 todo se vuelve programable v1
Capítulo 2 todo se vuelve programable v1
 
Guia01 control versiones
Guia01 control versionesGuia01 control versiones
Guia01 control versiones
 
U1 Control de versiones.pdf
U1 Control de versiones.pdfU1 Control de versiones.pdf
U1 Control de versiones.pdf
 
S14-DAW-2022S1.pptx
S14-DAW-2022S1.pptxS14-DAW-2022S1.pptx
S14-DAW-2022S1.pptx
 
Release note 4.0
Release note 4.0Release note 4.0
Release note 4.0
 
El uso correcto de MySQLi
El uso correcto de MySQLi El uso correcto de MySQLi
El uso correcto de MySQLi
 
Aplicaciones web altamente escalables con Redis
Aplicaciones web altamente escalables con RedisAplicaciones web altamente escalables con Redis
Aplicaciones web altamente escalables con Redis
 
Sistemas gestores de base de datos (sgbd)
Sistemas gestores de base de datos (sgbd)Sistemas gestores de base de datos (sgbd)
Sistemas gestores de base de datos (sgbd)
 
Semana 4 control de versiones planificacion y gestion
Semana 4 control de versiones planificacion y gestionSemana 4 control de versiones planificacion y gestion
Semana 4 control de versiones planificacion y gestion
 
Tp n°2 parte a
Tp n°2 parte aTp n°2 parte a
Tp n°2 parte a
 
Metacoretex
MetacoretexMetacoretex
Metacoretex
 

Más de Sección de Metodologías, Normalización y Calidad del Software

Atica Dev Ops II
Atica Dev Ops IIAtica Dev Ops II
ATICA DevOps
ATICA DevOpsATICA DevOps
En 20 minutos ... Charla drools
En 20 minutos ... Charla droolsEn 20 minutos ... Charla drools
En 20 minutos ... Charla selenium
En 20 minutos ... Charla seleniumEn 20 minutos ... Charla selenium
En 20 minutos ... Como se hizo LooWID.com
En 20 minutos ... Como se hizo LooWID.comEn 20 minutos ... Como se hizo LooWID.com
En 20 minutos ... Como se hizo LooWID.com
Sección de Metodologías, Normalización y Calidad del Software
 
En 20 minutos ... jBPM
En 20 minutos ... jBPMEn 20 minutos ... jBPM
En 20 minutos ... Chrome Developer Tools
En 20 minutos ... Chrome Developer ToolsEn 20 minutos ... Chrome Developer Tools
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyectoEn 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
Sección de Metodologías, Normalización y Calidad del Software
 
En 20 minutos ... Tests de Aceptación con Cucumber
En 20 minutos ... Tests de Aceptación con CucumberEn 20 minutos ... Tests de Aceptación con Cucumber
En 20 minutos ... Tests de Aceptación con Cucumber
Sección de Metodologías, Normalización y Calidad del Software
 
En 20 minutos ... Técnicas SEO - Mejorando la Visibilidad de nuestra Web
En 20 minutos ... Técnicas SEO - Mejorando la Visibilidad de nuestra WebEn 20 minutos ... Técnicas SEO - Mejorando la Visibilidad de nuestra Web
En 20 minutos ... Técnicas SEO - Mejorando la Visibilidad de nuestra Web
Sección de Metodologías, Normalización y Calidad del Software
 
En 20 minutos ... Arquitectura Oracle
En 20 minutos ... Arquitectura OracleEn 20 minutos ... Arquitectura Oracle
En 20 minutos ... Responsive Design
En 20 minutos ... Responsive DesignEn 20 minutos ... Responsive Design
Auditoria en BD de las Sesiones Web
Auditoria en BD de las Sesiones WebAuditoria en BD de las Sesiones Web
En 20 minutos ... HTML5 + CSS3
En 20 minutos ... HTML5 + CSS3En 20 minutos ... HTML5 + CSS3
En 20 minutos ... jQuery
En 20 minutos ... jQueryEn 20 minutos ... jQuery
Experiencia de Usuario (UX)
Experiencia de Usuario (UX)Experiencia de Usuario (UX)
En 20 minutos... Buenas Practicas SSL
En 20 minutos... Buenas Practicas SSLEn 20 minutos... Buenas Practicas SSL
LOGATICA
LOGATICALOGATICA
MEDEA contada a los alumnos de Grado de Ingeniería Informática
MEDEA contada a los alumnos de Grado de Ingeniería InformáticaMEDEA contada a los alumnos de Grado de Ingeniería Informática
MEDEA contada a los alumnos de Grado de Ingeniería Informática
Sección de Metodologías, Normalización y Calidad del Software
 
Notimovil
NotimovilNotimovil

Más de Sección de Metodologías, Normalización y Calidad del Software (20)

Atica Dev Ops II
Atica Dev Ops IIAtica Dev Ops II
Atica Dev Ops II
 
ATICA DevOps
ATICA DevOpsATICA DevOps
ATICA DevOps
 
En 20 minutos ... Charla drools
En 20 minutos ... Charla droolsEn 20 minutos ... Charla drools
En 20 minutos ... Charla drools
 
En 20 minutos ... Charla selenium
En 20 minutos ... Charla seleniumEn 20 minutos ... Charla selenium
En 20 minutos ... Charla selenium
 
En 20 minutos ... Como se hizo LooWID.com
En 20 minutos ... Como se hizo LooWID.comEn 20 minutos ... Como se hizo LooWID.com
En 20 minutos ... Como se hizo LooWID.com
 
En 20 minutos ... jBPM
En 20 minutos ... jBPMEn 20 minutos ... jBPM
En 20 minutos ... jBPM
 
En 20 minutos ... Chrome Developer Tools
En 20 minutos ... Chrome Developer ToolsEn 20 minutos ... Chrome Developer Tools
En 20 minutos ... Chrome Developer Tools
 
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyectoEn 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
 
En 20 minutos ... Tests de Aceptación con Cucumber
En 20 minutos ... Tests de Aceptación con CucumberEn 20 minutos ... Tests de Aceptación con Cucumber
En 20 minutos ... Tests de Aceptación con Cucumber
 
En 20 minutos ... Técnicas SEO - Mejorando la Visibilidad de nuestra Web
En 20 minutos ... Técnicas SEO - Mejorando la Visibilidad de nuestra WebEn 20 minutos ... Técnicas SEO - Mejorando la Visibilidad de nuestra Web
En 20 minutos ... Técnicas SEO - Mejorando la Visibilidad de nuestra Web
 
En 20 minutos ... Arquitectura Oracle
En 20 minutos ... Arquitectura OracleEn 20 minutos ... Arquitectura Oracle
En 20 minutos ... Arquitectura Oracle
 
En 20 minutos ... Responsive Design
En 20 minutos ... Responsive DesignEn 20 minutos ... Responsive Design
En 20 minutos ... Responsive Design
 
Auditoria en BD de las Sesiones Web
Auditoria en BD de las Sesiones WebAuditoria en BD de las Sesiones Web
Auditoria en BD de las Sesiones Web
 
En 20 minutos ... HTML5 + CSS3
En 20 minutos ... HTML5 + CSS3En 20 minutos ... HTML5 + CSS3
En 20 minutos ... HTML5 + CSS3
 
En 20 minutos ... jQuery
En 20 minutos ... jQueryEn 20 minutos ... jQuery
En 20 minutos ... jQuery
 
Experiencia de Usuario (UX)
Experiencia de Usuario (UX)Experiencia de Usuario (UX)
Experiencia de Usuario (UX)
 
En 20 minutos... Buenas Practicas SSL
En 20 minutos... Buenas Practicas SSLEn 20 minutos... Buenas Practicas SSL
En 20 minutos... Buenas Practicas SSL
 
LOGATICA
LOGATICALOGATICA
LOGATICA
 
MEDEA contada a los alumnos de Grado de Ingeniería Informática
MEDEA contada a los alumnos de Grado de Ingeniería InformáticaMEDEA contada a los alumnos de Grado de Ingeniería Informática
MEDEA contada a los alumnos de Grado de Ingeniería Informática
 
Notimovil
NotimovilNotimovil
Notimovil
 

Último

INFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIAINFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIA
renzocruz180310
 
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
AMADO SALVADOR
 
Presentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre bloggerPresentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre blogger
larapalaciosmonzon28
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
YaniEscobar2
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
MiguelAtencio10
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
cecypozos703
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
gisellearanguren1
 
Mantenimiento de sistemas eléctricos y electrónicosarticles-241712_recurso_6....
Mantenimiento de sistemas eléctricos y electrónicosarticles-241712_recurso_6....Mantenimiento de sistemas eléctricos y electrónicosarticles-241712_recurso_6....
Mantenimiento de sistemas eléctricos y electrónicosarticles-241712_recurso_6....
MiguelAtencio10
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
larapalaciosmonzon28
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
AbrahamCastillo42
 
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIAMONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
leia ereni
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
NicandroMartinez2
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
mantenimientocarbra6
 
Flows: Mejores Prácticas y Nuevos Features
Flows: Mejores Prácticas y Nuevos FeaturesFlows: Mejores Prácticas y Nuevos Features
Flows: Mejores Prácticas y Nuevos Features
Paola De la Torre
 
Second Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro TapiaSecond Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro Tapia
al050121024
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
doctorsoluciones34
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
giampierdiaz5
 
625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf
yuberpalma
 
La Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docxLa Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docx
luiscohailatenazoa0
 
Inteligencia Artificial
Inteligencia ArtificialInteligencia Artificial
Inteligencia Artificial
YashiraPaye
 

Último (20)

INFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIAINFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIA
 
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
 
Presentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre bloggerPresentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre blogger
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
 
Mantenimiento de sistemas eléctricos y electrónicosarticles-241712_recurso_6....
Mantenimiento de sistemas eléctricos y electrónicosarticles-241712_recurso_6....Mantenimiento de sistemas eléctricos y electrónicosarticles-241712_recurso_6....
Mantenimiento de sistemas eléctricos y electrónicosarticles-241712_recurso_6....
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
 
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIAMONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
 
Flows: Mejores Prácticas y Nuevos Features
Flows: Mejores Prácticas y Nuevos FeaturesFlows: Mejores Prácticas y Nuevos Features
Flows: Mejores Prácticas y Nuevos Features
 
Second Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro TapiaSecond Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro Tapia
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
 
625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf
 
La Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docxLa Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docx
 
Inteligencia Artificial
Inteligencia ArtificialInteligencia Artificial
Inteligencia Artificial
 

En 20 minutos ...Control de Cambios de la BD con Liquibase

  • 1. Control de versiones de bases de datos con Liquibase © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 2. Contenido 1. Situación actual 2. ¿Qué es Liquibase? 3. ¿Cómo se aplica un cambio? 4. Cambios que podemos hacer 5. Otras etiquetas © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 3. Situación actual • ¿Cuál es el estado de la base de datos? • ¿Este script está ejecutado?, ¿en qué entorno? • ¿Está sincronizada la base de datos con el código de la aplicación? • Ejecución manual de scripts por parte de DBAs o equipos de sistemas. • Scripts dependientes de la base de datos. • Necesito volver la base de datos a cierto estado. • Si tengo control de versiones sobre el código, ¿lo puedo tener también de la base de datos? © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 4. ¿Qué es Liquibase? • Los cambios se hacen de manera controlada. • Tenemos un histórico de cambios aplicados. • Podemos revertir cambios. • Sacar diferencias. • Generar un script inicial de una base de datos dada. • Generar una documentación de la base de datos. • Es independiente del DBMS. • Integración con Maven. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 5. ¿Cómo se aplica un cambio? 1. El desarrollador escribe el changeSet (XML, JSON, SQL,…) 2. Se ejecuta Liquibase (Maven, CI, línea de comandos) 3. Liquibase comprueba que el cambio no se ha realizado: mira el id, autor, nombre del fichero 1. Si ya existe un cambio con el mismo id comprueba el MD5, si son distintos da un error. 4. Aplica el cambio 5. Guarda en DATABASECHANGELOG el registro del cambio © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 6. Cambios que podemos hacer Cambios que podemos especificar: • Delete • Añadir un autoincremental • Insert • Añadir una columna • Cargar datos • Añadir un valor por defecto • Borrar tabla • Añadir una foreign key • Borrar índice • Añadir primary key • Ejecutar una consulta nativa • Añadir unique • … • Crear índice • Crear prodecimiento • Crear tabla • Crear secuencia © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 7. Otras etiquetas • Definir precondiciones. • Incluir otros changeLogs para hacer los cambios más manejables. • Definir un contexto para ejecutar sólo los changeSet que queramos. • Podemos poner comentarios © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 8. Enlaces de interés • http://www.liquibase.org • http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=liquibase © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 9. Fin Gracias por vuestra atención ¿Alguna pregunta? Tomás Moreno Bernal (tomas.moreno@um.es) @tmorenobernal © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.