DBMate

Plain-SQL DB migrations.

Visit website ↗

Profile updated

Console’s review

· Reviewed by David Mytton

What we like

Standalone CLI for managing database migrations. Maintains a “current state” SQL file so you can always provision the database and diff changes. Migrations are specified in plain SQL with up and down states to support rollbacks. Runs migrations inside transactions. Single binary & can also be embedded in code (Go).

Tradeoffs

Framework agnostic, but may not play well if you do use a framework like Prisma and want to manage migrations for its schema across other languages. Not sure if that’s a limitation of DBMate or Prisma, though!

Is DBMate a fit?

Based on Console’s review published on 2023-09-21. Summary updated .

Who it’s for

Developers managing database migrations

Why consider it

Manages database migrations with plain SQL and supports rollbacks

Keep in mind

May not integrate well with frameworks like Prisma

Console is a free weekly newsletter with short reviews of developer tools, covering strengths and tradeoffs. This review reflects Console’s assessment at publication on 2023-09-21. Features and limitations may have changed since the review date. Read our selection criteria and learn about Console.

Discover your next favorite tool

Independent devtool reviews and the latest betas, in your inbox every Thursday. Free.