[GO] Vergleich der eigenständigen DB-Migrationstools für 2020

Überblick

Webanwendungsframeworks wie Ruby on Rails, CakePHP und Laravel enthalten standardmäßig Datenbankmigrationstools. In einigen Fällen möchten Sie die Datenbankmigration jedoch getrennt von der Anwendung verwalten. Hier werden wir die Migrationstools vergleichen, die eigenständig verwendet werden können.

Was ist Datenbankmigration?

Ein automatisiertes Tool zum Erstellen von Datenbanken und Aktualisieren von Tabellen. Die folgenden Funktionen sind enthalten. --Datenbank erstellen --Tabelle erstellen --DB-Schema-Versionskontrolle (zuvor ausgeführtes SQL wird in einer bestimmten Tabelle gespeichert)

Liste der DB-Migrationstools

Auswahlbedingungen

Werkzeugname Betriebsumgebung Lizenz DSL / RawSQL-Unterstützung Unterstütztes RDBMS Dokument
MyBatis Migration Java Apache2.0 Nur RawSQL JDBC-Treiber vorhanden
Alle RDBMS
Ja
liquibase Java Apache2.0 Beide MySQL, PostgreSQL,
Oracle, Sql Server,
Sybase_Enterprise, Sybase_Anywhere,
DB2 , Apache_Derby
derby, HSQL,
H2, Informix,
Firebird, SQLite
Ja
Flyway Java Apache2.0 Beide Oracle, SQL Server, Aurora MySQL, MariaDB,
Percona XtraDB Cluster, PostgreSQL,
Aurora PostgreSQL, Redshift,
CockroachDB, SAP HANA,
Sybase ASE, Informix,
H2, HSQLDB,
Derby and SQLite
Ja
phpmig PHP None Nur RawSQL MySQL, MariaDB,
PostgreSQL
Nur GitHub README
phinx PHP MIT Beide ? Ja
ridgepole Ruby MIT Beide Für RDB-Client
Alle RDBMS mit Gem
Nur GitHub-README
migrate Go MIT Nur DSL SQLite3, PostgreSQL,
MySQL, SQL Server,
Cassandra, RedShift,
Ja
sql-migrate Go MIT Beide SQLite, PostgreSQL,
MySQL, SQL Server,
Oracle
Nur GitHub-README
goose Go MIT Beide postgres, mysql,
sqlite3
Nur BitBucket-README
alembic Python MIT Beide MySQL, SQLServer,
Postgresql, SQLite
Ja
simple-db-migrate Python Apache2.0 Nur RawSQL MySQL, SQLServer,
Postgresql
Nur GitHub README
yoyo-migrations Python Apache2.0 Beide MySQL, SQLServer,
Postgresql, SQLite
Ja
db-migrate node.js MIT Beide Mysql, PostgreSQL,
sqlite3, Mongodb
Ja

(Referenz) https://qiita.com/nownabe/items/1acce9f6b9f14f74c965 https://qiita.com/k-motoyan/items/6f64d650f14bfb180e54 https://qiita.com/narikei/items/8a71c5439edc9cb66550 https://qiita.com/okoppe8/items/c9f8372d5ac9a9679396

Recommended Posts

Vergleich der eigenständigen DB-Migrationstools für 2020
Vergleich von LDA-Implementierungen
Vergleich von Online-Klassifikatoren
SQLAlchemy + DB-Migration durch Alembic
Vergleich von Apex und Lamvery