pgroll

A command-line tool for safe, reversible PostgreSQL schema migrations with no downtime. It serves old and new schema versions side by side while applications move over.

Share on XLicense: Apache-2.0

Overview

pgroll is an open-source command-line tool for safe, reversible PostgreSQL schema migrations. It serves several schema versions at the same time, so client applications keep working while the schema changes, even when the change would normally break them. It applies changes without locking the database. Old and new versions run side by side, which makes application rollout simpler and allows an instant rollback. It is written in Go.

Key features

  • Zero-downtime schema migrations without database locking
  • Old and new schema versions work at the same time
  • Reversible migrations with instant rollback
  • Command-line tool written in Go

Best for

Teams running PostgreSQL in production that need to change the schema without downtime, and want to roll out application updates and roll back safely.

Upstream
xataio/pgroll
Fork on GitHub
Guo-astro/pgroll
Upstream stars
6.6k
Category
Developer tools and infrastructure
Language
Go
License
Apache-2.0
Forked
2025-10-18
Sync status
In syncLast synced 2026-09-29