database-migrations

Manage database schema changes with reversible, non-blocking migration workflows.

Updated Jul 8, 2026
One-click install
npx skills add https://github.com/nazrulsoftwaredev/NIT_CRM_2 --skill database-migrations-nazrulsoftwaredev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: database-migrations
Source: https://github.com/nazrulsoftwaredev/NIT_CRM_2/tree/main/.agents/skills/database-migrations
Command: npx skills add https://github.com/nazrulsoftwaredev/NIT_CRM_2 --skill database-migrations-nazrulsoftwaredev

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill addresses the high-risk challenge of modifying production database schemas without causing downtime, data loss, or application errors.

Core Features & Use Cases

  • Zero-Downtime Patterns: Implements expand-contract strategies for column renames and removals.
  • Migration Safety: Provides checklists for concurrent index creation and safe data backfills.
  • Multi-Tool Support: Offers workflow guidance for Prisma, Drizzle, Kysely, Django, and golang-migrate.
  • Use Case: When you need to rename a column in a table with millions of rows, this skill guides you through the multi-step process of adding a new column, backfilling data, and safely dropping the old column without locking the database.

Quick Start

Provide the database schema change requirements and the target ORM or migration tool to receive a step-by-step execution plan and the necessary SQL or migration code.

Frequently Asked Questions about database-migrations

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

FAQPage Schema
How do I rename a column in PostgreSQL without locking the database?

To rename a column without database locks, use an expand-contract strategy by adding a new column, backfilling data, updating application logic, and safely dropping the old column. This multi-step pattern prevents table locks on large production databases.

What is the best way to run database migrations with zero downtime?

Zero-downtime database migrations require reversible and non-blocking patterns like expand-contract workflows. This approach enforces strict migration workflows and concurrent operation best practices to ensure data integrity and continuous system availability during schema evolution.

Can I use Prisma or Drizzle for safe production database schema changes?

Yes, safe production schema changes support Prisma, Drizzle, Kysely, Django, and golang-migrate. The workflow provides specific guidance for these ORMs to ensure non-blocking migrations and data integrity during deployment.

How do I safely backfill data in a table with millions of rows?

Safe data backfills for large tables require strict migration workflows that avoid long-running locks. The process provides checklists for concurrent operations and non-blocking patterns to update millions of rows while maintaining system availability.

When do I need to use expand-contract patterns for database schema evolution?

Expand-contract patterns are needed for high-risk schema modifications like column renames and removals in production. They ensure system availability and prevent application errors by splitting changes into reversible, non-blocking deployment phases.