Skip to content
SPECIFICTION
Get listed

db-migrate

github.com

Free plan LinuxSelf-hosted
Visit github.com
Spec score 8.5 #5 of 32 in Database Migration Tools

What it is

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.

Spec sheet

Purpose
db-migrate describes itself as a database migration framework for Node.js.Read 11 Oct 2026 · github.com
Security
The repository page displays a Security and quality section with 0 findings.Read 4 Oct 2026 · github.com
Support
The repository invites users to seek project support through backer and sponsor contributions.Read 11 Oct 2026 · github.com
License
The project is distributed under the MIT License.Read 11 Oct 2026 · github.com
Additional database
The documentation also lists CockroachDB as an officially supported database.Read 11 Oct 2026 · db-migrate.readthedocs.io
Compatibility
The README says db-migrate 0.11 and older are end of life, while v1 migrations continue to work unchanged.Read 11 Oct 2026 · github.com
Credentials
The configuration documentation supports environment-variable references for values such as database usernames and passwords.Read 4 Oct 2026 · db-migrate.readthedocs.io
Databases
The project lists MySQL, PostgreSQL, sqlite3, and MongoDB as officially supported databases.Read 11 Oct 2026 · github.com
Documentation
The repository links to the project's full documentation and usage examples on Read the Docs.Read 11 Oct 2026 · github.com
Environments
Environment settings can be loaded from database.json, with CLI options to choose an environment and config file.Read 4 Oct 2026 · db-migrate.readthedocs.io
Install
The project documents global installation with npm install -g db-migrate and local installation with npm install db-migrate.Read 11 Oct 2026 · github.com
Installation
The project documents global installation with npm install -g db-migrate and local installation with npm install db-migrate.Read 4 Oct 2026 · github.com
Migration commands
The command-line interface supports up, down, reset, create, and db commands.Read 4 Oct 2026 · db-migrate.readthedocs.io
Migration styles
Migration files can use callback-based or promise-based interfaces.Read 4 Oct 2026 · db-migrate.readthedocs.io
Migration tracking
The documentation says db-migrate creates a migrations table to track which migrations have been applied.Read 4 Oct 2026 · db-migrate.readthedocs.io
Node support
The project says Node.js 24 and newer are officially supported and older versions may work but are not tested.Read 11 Oct 2026 · github.com
Runtime
The package metadata specifies Node.js version >=8.0.0.Read 4 Oct 2026 · github.com
Security terms
The MIT license states that the software is provided as is without warranty.Read 11 Oct 2026 · github.com
SQL files
The --sql-file option generates separate SQL files for migration up and down statements.Read 4 Oct 2026 · db-migrate.readthedocs.io
SSH
The README says SSH tunneling is provided by a plugin that can be installed next to db-migrate.Read 11 Oct 2026 · github.com
Supported databases
The documentation lists MySQL, PostgreSQL, sqlite3, MongoDB, and CockroachDB as supported databases.Read 4 Oct 2026 · db-migrate.readthedocs.io
Who it is for
The project describes its software as a database migration framework for Node.js applications.Read 11 Oct 2026 · github.com

Plans and prices

db-migrate Free MIT-licensed software · Node.js 24 or newer officially supported · database drivers installed separately Read 11 Oct 2026 · github.com

Every db-migrate plan and price →

Strong points and limits

Strong points

  • Supports five listed database systems
  • Includes rollback and reset commands
  • Tracks applied migrations in a table
  • Supports callback and promise interfaces
  • Environment variables can hold credentials

Limits

  • Database drivers are installed separately
  • Older Node.js versions are not tested
  • SSH tunneling requires a separate plugin
  • MIT license provides no warranty

Who it suits

It suits Node.js application teams managing schema changes across supported databases. It is also intended for teams that want self-hosted, MIT-licensed migration tooling.

Verdict

db-migrate covers core migration workflows with several database choices, tracking, rollback, and configurable environments. Its separate drivers and Node.js support distinctions should be checked before deployment.

Where Specifiction places it

Alternatives to db-migrateAll alternatives →