Skip to content
SPECIFICTION
Get listed

Evolve vs sqlx-cli

Evolve

github.com

sqlx-cli

github.com

Side by side

FigureEvolvesqlx-cli
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYesYes
macOS—Yes
LinuxYesYes
Plans published11
Spec score · Database Migration Tools7.8 (#14)8.0 (#11)
PurposeEvolve is a cross-platform database migration tool inspired by Flyway that uses plain SQL scripts.SQLx CLI is a command-line utility for managing databases and migrations and enabling offline mode for SQLx query macros.
SupportThe maintainer says the project is personal, free-time, and unfunded, and invites users and companies to support it through GitHub Sponsors; company donations are mentioned as a way to receive priority support.The SQLx repository links to its FAQ and Discord community for questions.
Supported databasesThe documentation lists PostgreSQL, SQL Server, SQLite, MySQL, MariaDB, Cassandra, and CockroachDB.The CLI installation instructions say it supports the databases supported by SQLx; the project lists PostgreSQL, MySQL, MariaDB, and SQLite.

Plans

Evolve

  • EvolveFree

Evolve pricing →

sqlx-cli

  • sqlx-cliFree

sqlx-cli pricing →

In their own words

Evolve

Evolve is a free, open-source database migration tool that applies plain SQL scripts to synchronize changes across environments and development teams, including continuous integration and delivery. It is available as a .NET library, .NET tool, or standalone CLI. Listed databases include PostgreSQL, SQL Server, SQLite, MySQL, MariaDB, Cassandra, and CockroachDB. Versioned migrations run once; repeatable migrations run again when their contents change. Evolve records migration names and checksums in a metadata table and checks them whenever it runs. Commands are migrate, erase, repair, and info. Each migration normally uses its own transaction, while TransactionMode can group scripts for commit or rollback. Cluster mode uses a session-level lock to coordinate nodes. The standalone CLI supports x64 Windows and Linux without external dependencies. The library requires .NET 4.7.2+ or .NET Standard 2.0/.NET 5.0; the tool requires .NET Core SDK 3.0 or later.

Visit github.com

sqlx-cli

sqlx-cli is SQLx’s command-line utility for managing databases, migrations, and offline preparation for query macros. It can create or drop the database identified by a database URL, and create, run, inspect, or revert migrations, including paired up and down scripts. The `cargo sqlx prepare` command writes query metadata to a `.sqlx` directory. Once that metadata is checked into version control, builds can run without an active database connection. The `--check` option returns a nonzero status if the saved metadata is out of date, a behavior the project describes for continuous integration.

For workspaces whose crates use query macros, `cargo sqlx prepare --workspace` places one `.sqlx` directory at the workspace root. Commands accept the database URL through `--database-url`, the `DATABASE_URL` environment variable, or a `.env` file in the current directory. The project lists PostgreSQL, MySQL, MariaDB, and SQLite support, with installation options for database drivers and TLS backends. The CLI is free and open source under the user’s choice of Apache-2.0 or MIT license. The README notes that MSSQL support was removed pending a full driver rewrite.

Visit github.com