gh-ost review
A focused, open-source CLI for controlled online schema changes in MySQL.
Reviewed by iTechGuides Editors · Editorial team · Updated Oct 2026
gh-ost is an open-source command-line tool for performing online schema migrations on MySQL tables. It creates a ghost table, copies rows incrementally, reads binary-log events instead of using triggers, and performs a controlled table cut-over. The product is intended for operators managing production MySQL environments, particularly teams that need schema changes while ongoing table updates continue.
Its strongest capability is control during migration. Binary-log streaming captures and applies ongoing table changes, while migration testing can run on replicas without replacing the original table. Operators can pause or throttle a migration, change settings interactively at runtime, audit status through a Unix socket or TCP, and postpone the table cut-over. These controls fit production workflows where migration timing and load management matter. Checkpoint-based resumption also supports continuing a migration after interruption, while conditional reversion provides an additional control for completed migrations.
The trade-off is focus. gh-ost supports MySQL and uses SQL migrations, so teams seeking a tool for multiple database families should choose an alternative with broader database coverage. It is self-hosted and command-line based, with binaries distributed for Linux and macOS, making it a better fit for operators comfortable managing the tool within their own environment than for buyers seeking a hosted migration service. The project is open source and has a free plan, with no paid plan structure described. Choose gh-ost when triggerless MySQL migrations, operational controls, and migration recovery options are priorities; look elsewhere when cross-database support or a hosted interface is required.
gh-ost pros and cons
- Where it wins
- Uses binary-log streaming instead of triggers for ongoing table changes
- Supports throttling, pausing, postponed cut-over, and runtime reconfiguration
- Provides checkpoint resumption and conditional reversion controls
- Where it doesn't
- Supports MySQL rather than multiple database families
- Requires self-hosted command-line operation
- Distributed for Linux and macOS only
gh-ost fact sheet, pricing and score →
Advertiser disclosure: iTechGuides is reader-supported. Vendors can pay for top positions in our rankings and for a place on other products' pages, and we may earn a commission when you click some links. Bought places stand at the number bought; this page and our disclosure say so. Paying vendors may get a fuller, more detailed review from our editors, and that review can change their score. How we rank.
Last updated · How we research and update