Dbmate
A lightweight, framework-agnostic database migration tool
..., and ClickHouse. Uses plain SQL for writing schema migrations. Migrations are timestamp-versioned, to avoid version number conflicts with multiple developers. Migrations are run atomically inside a transaction. Supports creating and dropping databases (handy in development/test). Supports saving a schema.sql file to easily diff schema changes in git. Database connection URL is defined using an environment variable (DATABASE_URL by default), or specified on the command line.