Herramientas para migraciones de bases de datos.

Existen diversos tipos de herramientas para realizar migraciones de bases de datos (Schema migration, database migration, database change management en inglés). Estas herramientas están diseñadas para administrar cambios incrementales y reversibles sobre esquemas de bases de datos relacionales.

Una migración sobre un esquema es realizada siempre que se necesite actualizar o revertir un cambio sobre un esquema de una base de datos relacional.

En este texto, mostraré las herramientas disponibles y de las más oídas para trabajar con migraciones para bases de datos.

Flyway

Herramienta desarrollada para interactuar con Java
Bases de datos soportadas:

  • Oracle
    SQL Server
    SQL Azure
    DB2
    MySQL
    MariaDB
    Google Cloud
    PostgreSQL
    Redshift
    Otras…

Herramientas de Java con las que interactua

  • Maven
    Gradle
    Ant

6 Comandos básicos

  • Migrate
    Clean
    Info
    Validate
    Baseline
    Repair

Liquibase

Herramienta desarrollada para interactuar con Java
Bases de datos soportadas

  • MySQL
    PostgreSQL
    Oracle
    SQL Server
    Sybase
    DB2
    Apache Derby
    Otras

Herramientas Java con las que interactua

  • Maven
    Ant

Muchos comandos dependiendo de lo que se quiera hacer

Datical DB

Sin interacción directa con Java
Bases de datos soportadas

  • Oracle
    DB2
    MySQL
    SQL Server
    PostgreSQL
    Otras

Muchos comandos dependiendo de lo que se quiera hacer. Similar a Liquibase.

Active Record (migrations)

Herramienta hecha con Ruby
Bases de datos soportadas

  • PostgreSQL
    MySQL

Comandos basados en definir cosas en Ruby

Ruckusing-migrations

Herramienta hecha en PHP
Bases de datos soportadas

  • PostgreSQL
    MySQL
    Sqlite

Varios comandos basados en lo que se quiera hacer.

Phinx

Herramienta hecha en PHP
Bases de datos soportadas

  • MySQL
    PostgreSQL
    SQLite
    SQL Server

Varios comandos basados en lo que se quiera hacer.

MyBatis Migrations

Framework de persistencia para Java.
Bases de datos soportadas

  • Cualquiera bajo JDBC

Configuración basada en SQL, Java y XML

Ragtime

Biblioteca para realizar migraciones de datos estructurados hecha en Clojure
Bases de datos soportadas

  • Cualquiera bajo JDBC

Configuración basada en SQL

Lobos

Biblioteca para realizar migraciones de bases de datos escrita en Clojure.
Bases de datos soportadas

  • H2
    MySQL
    PostgreSQL
    SQLite
    SQL Server

Configuración bajo clojure

Deja un comentario