¿Qué hace esta skill?

La Migraciones de Base de Datos Seguras Skill proporciona patrones probados para realizar cambios de esquema y migraciones de datos en bases de datos de producción de forma segura, reversible y sin interrupción del servicio. Cubre PostgreSQL, MySQL y ORMs populares como Prisma, Django y golang-migrate, e incluye el patrón expand-contract para despliegues críticos sin tiempo de inactividad.

Cambios de esquema en producción
Crea o modifica tablas, añade columnas e índices sin bloquear la base de datos ni interrumpir el servicio.
Migraciones de datos por lotes
Ejecuta backfills y transformaciones masivas en bloques con SKIP LOCKED para evitar locks largos.
Patrón expand-contract
Renombra o transforma columnas en tres fases: añadir, rellenar y eliminar, sin romper la aplicación.
Configuración de ORMs
Configura herramientas de migración en proyectos nuevos con Prisma, Django, Drizzle, Kysely o golang-migrate.

Ejemplos de uso

🏗️ Añadir columna segura
Necesito añadir una columna avatar_url a la tabla users en PostgreSQL sin bloquear la tabla. Genera la migración.
🔄 Renombrar columna
Quiero renombrar la columna username a display_name en producción usando el patrón expand-contract. Dame las migraciones.
📦 Backfill por lotes
Tengo que hacer un backfill de normalized_email = LOWER(email) en 2 millones de filas. Genera la migración por lotes.
🛠️ Workflow con Prisma
Configura el workflow de migraciones con Prisma para mi proyecto: crear, aplicar y generar SQL personalizado.

Características

Migraciones reversibles Cada migración incluye operaciones UP y DOWN claramente definidas para rollback seguro.
Cero bloqueos en producción Usa CREATE INDEX CONCURRENTLY, columnas nullable con defaults y operaciones por lotes con SKIP LOCKED.
Patrón expand-contract Despliegues sin interrupción en tres fases: añadir, rellenar datos y eliminar lo obsoleto.
Separación esquema y datos Las migraciones DDL y DML van en archivos distintos para facilitar el rollback y evitar transacciones largas.
Multi-ORM y multi-motor Compatible con PostgreSQL, MySQL, Prisma, Django, Drizzle, Kysely y golang-migrate.

Preguntas frecuentes

PostgreSQL y MySQL principalmente, con ejemplos específicos para cada motor. Los patrones son aplicables a cualquier base de datos relacional.
No. La skill proporciona patrones y código SQL listo para usar con tu ORM o herramienta de migración preferida (Prisma, Django, golang-migrate, etc.).
Sí. Los patrones están diseñados específicamente para evitar bloqueos en tablas grandes, usando operaciones concurrentes, columnas nullable con defaults y backfills por lotes.
Sí, pero nunca edites una migración ya desplegada en producción. Crea una nueva migración para evitar drift entre entornos.

Skills relacionadas

Mas skills de la misma categoria:

Migraciones de Base de Datos Seguras — Despliegues sin interrupción con Claude AI

¿Prefieres escuchar el contenido? Genera la narración de audio con un clic.