database-migrations

Plan and execute reversible database migrations across PostgreSQL, MySQL, and ORMs.

Updated Aug 27, 2026
One-click install
npx skills add https://github.com/giuseppecutuli/speakdoc --skill database-migrations-giuseppecutuli
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: database-migrations
Source: https://github.com/giuseppecutuli/speakdoc/tree/main/.claude/skills/database-migrations
Command: npx skills add https://github.com/giuseppecutuli/speakdoc --skill database-migrations-giuseppecutuli

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Safe, reversible database migrations and zero-downtime deployment planning for production systems.

Core Features & Use Cases

  • Migration safety: guidelines to ensure migrations are atomic, testable, and reversible with UP/DOWN paths.
  • Cross-technology coverage: applicable to PostgreSQL, MySQL, and ORMs (Prisma, Drizzle, Django, TypeORM, golang-migrate).
  • Zero-downtime patterns: expand-contract strategy, backfills, concurrent indexes, and phased rollout.

Quick Start

Define a repeatable migration plan by writing separate schema and data migrations, validating them in a staging environment, and coordinating deploys to achieve zero-downtime changes.

Frequently Asked Questions about database-migrations

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I perform zero-downtime database migrations in production?

Zero-downtime database migrations use the expand-contract strategy, separating schema and data changes into phased deployments. This approach coordinates backfills and concurrent index creation to ensure production systems remain available during schema changes.

What is the best way to write safe and reversible database schema changes?

Safe database schema changes require atomic, testable migrations with defined UP and DOWN paths. By validating migrations in a staging environment first, you ensure repeatable and reversible deployment processes across PostgreSQL and MySQL.

Does this migration approach work with Prisma, Drizzle, Django, and TypeORM?

Yes, this migration strategy applies to Prisma, Drizzle, Django, TypeORM, and golang-migrate. It provides tooling guidance and safety requirements across these ORMs for both PostgreSQL and MySQL database environments.

Why should I separate schema migrations from data migrations?

Separating schema migrations from data migrations prevents locking and ensures deployment safety. This separation allows you to apply structural database changes independently from backfills, enabling phased rollouts and zero-downtime updates.

When do I need concurrent index creation during database migrations?

Concurrent index creation is needed during database migrations to avoid locking tables in production. It allows you to add indexes without blocking read or write operations, which is critical for zero-downtime deployment patterns.

Can I execute atomic and repeatable migrations across PostgreSQL and MySQL?

Yes, you can execute atomic and repeatable migrations across PostgreSQL and MySQL. The process defines strict requirements for migration safety and concurrency, ensuring consistent schema changes across different database platforms.