GUI-DGT-001A Guía para Hacer Migraciones con Prisma
v 3.0
Propósito
Esta guía pretende ahondar en el proceso a seguir para hacer migraciones con prisma.
Notas introductorias
Este documento es una extensión de la guía de desarrollo para LinkBridge. Se abordan comandos específicos para la configuración de software, facilitando así la integración y colaboración efectiva dentro del equipo de desarrollo.
Contenido
Contexto
Las migraciones son una herramienta proporcionada por prisma que ayuda a actualizar una base de datos sin perder información, haciendo trivial cambiar el schema de una base de datos en producción.
Configuración Inicial
Asegúrate de que tu archivo schema.prisma está actualizado y refleja el modelo de datos que deseas utilizar. Este archivo define la estructura de tu base de datos y es crucial para la generación de migraciones correctas.
Ubicación común del archivo: prisma/schema.prisma
Instalación de Prisma CLI
Verifica que tienes Prisma CLI instalado globalmente o como parte de tu proyecto. Ya que tienes el paquete prisma en tus dependencias de desarrollo, puedes usarlo directamente.
pnpm exec prisma --version
Crear una Migración
Panorama general
Una migración se debe de realizar cuando necesites hacer cambios en el esquema de datos, como añadir una nueva columna, cambiar el tipo de dato o borrar tablas. Este diagrama explica a grandes rasgos el proceso de migraciones:
Ejecución
Estos cambios los debes realizar directamente sobre el archivo schema.prisma. Una vez que estes satisfecho con los cambios que quieres agregar debes correr el siguiente comando:
pnpm prisma:migrate
Agregar una columna sin un valor default o que no sea opcional causará que toda la base de datos se borre. Evita esto a toda costa
Este comando interactivo te guiará para nombrar tu migración y aplicará los cambios en tu base de datos de desarrollo local.
Aplicar Migraciones en Producción
Una vez que has terminado el desarrollo y estás listo para ir a producción, deberás desplegar tus migraciones en un entorno de producción, utilizando:
pnpm prisma:migrate:deploy
Este comando aplica todas las migraciones pendientes en la base de datos de producción de manera segura. Esto se debe de realizar una vez que tu funcionalidad se haya mergeado a develop.
Resolución de problemas de migraciones
Verificar el Estado de las Migraciones
Para verificar si todas las migraciones se han aplicado correctamente o detectar posibles problemas, usa:
pnpm prisma:migrate:status
Este comando proporciona un informe del estado de las migraciones en tu base de datos conectada.
Prisma migrate resolve
En caso de obtener algún error, ejecuta el comando.
pnpm prisma migrate resolve
Ejecuta el comando según tu necesidad.
pnpm prisma migrate resolve --applied nombre_de_la_migracion
Esta opción se utiliza cuando deseas marcar una migración como aplicada en tu historial local de migraciones sin realizar ningún cambio adicional en tu base de datos.
pnpm prisma migrate resolve --rolled-back nombre_de_la_migracion
Esta opción se utiliza cuando deseas marcar una migración como revertida o deshecha en tu historial local de migraciones y revertir los cambios realizados por esa migración en tu base de datos.
Control de cambios
Versión | Cambio realizado | Análisis | Autor | Revisor(es) | Fecha de cambio |
---|---|---|---|---|---|
v 1.0 | Creación de la guía | N/A | Frida Bailleres | Olimpia Garcia | 15/04/2024 |
v 2.0 | Ajuste de formato | Se modificó el contenido de la guía de acuerdo a la plantilla porque el documento tenía información no requeridas | Yuna Chung | Ricardo Fernández | 24/04/2024 |
v 3.0 | Se agregó paso 7 | Se agregó el paso para corrección de errores en migraciones de prisma | Arturo Díaz | Ian Padrón | 24/04/2024 |
v 4.0 | Reestructuración de la guía | Se cambió la guía para una mejor comprensión de las migraciones | Ricardo Fernández | 02/05/2024 |