db-migrate vs Doctrine Migrations
db-migrate
github.comDoctrine Migrations
doctrine-project.orgSide by side
| Figure | db-migrate | Doctrine Migrations |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Linux | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Database Migration Tools | 8.5 (#5) | 8.5 (#6) |
| Installation | The project documents global installation with npm install -g db-migrate and local installation with npm install db-migrate. | The library can be installed with Composer or downloaded as a PHAR from GitHub releases. |
| License | The project is distributed under the MIT License. | The GitHub repository identifies the project as MIT licensed. |
| Purpose | db-migrate describes itself as a database migration framework for Node.js. | Doctrine Migrations adds database schema versioning and helps deploy schema changes. |
| Support | The repository invites users to seek project support through backer and sponsor contributions. | The documentation directs users to the Doctrine mailing list, Slack, GitHub bug reporting, and Stack Overflow for help. |
Plans
In their own words
db-migrate
db-migrate is a free, open-source database migration framework for Node.js applications. It runs on Linux and can be self-hosted. The command-line interface provides up, down, reset, create, and db commands for applying, rolling back, resetting, creating, and managing migrations. Supported databases listed by the project include MySQL, PostgreSQL, sqlite3, MongoDB, and CockroachDB, with database drivers installed separately. Migration files support callback-based or promise-based interfaces, while the --sql-file option creates separate SQL files for migration-up and migration-down statements. Applied migrations are recorded in a migrations table. Environment settings can come from database.json, with command-line choices for the environment and configuration file. Database usernames and passwords can reference environment variables. Global and local npm installation are documented. Node.js 24 and newer are officially supported; package metadata specifies version 8.0.0 or later. Rollback is supported, and the format is mixed.
Doctrine Migrations
Doctrine Migrations is a free, self-hosted PHP library for versioning database schemas and deploying changes in a reviewable, testable way. Built on Doctrine DBAL and ORM, it can generate migration code by comparing a database schema with ORM mapping information, with documentation covering diffing with or without the ORM. Console commands show migration status, perform dry runs, execute one or more migrations, and revert changes. Generated SQL can be written to a file with --write-sql instead of applied directly, while --no-interaction supports unattended execution. Transaction controls cover all-or-nothing behavior and running with or without transactions. Install it through Composer, which provides a doctrine-migrations console application, or download a PHAR from GitHub releases. Doctrine lists integrations for Symfony, Zend, Laravel, Silex, and Nette. Version 3.9.8 is stable; 3.8 and earlier are unmaintained.