Prisma,我只是更新一下表结构,你为什么要重置我的数据库!?
💡
原文中文,约1000字,阅读约需3分钟。
📝
内容提要
在场景开发过程中,通过prisma重构服务器后台的数据库部分,并增加新表。使用Schema定义和搬迁指令实现数据搬迁,但需要手动创建一条搬迁记录解决migration history问题。通过prisma migrate dev指令实现完美搬迁。
🎯
关键要点
- 在开发过程中对服务器后台数据库进行prisma重构,并增加新表。
- 使用pnpm prisma db pull命令生成数据库对应的Schema。
- 执行pnpm prisma migrate dev命令时,发现数据库schema与迁移历史不一致,需要重置数据库。
- 问题出在迁移历史上,通过_prisma_migrations表的数据判断是否需要重置数据库。
- 手动创建一条迁移历史记录以解决问题,创建migrations/initial/migration.sql文件。
- 使用mysql图形化工具导入表结构的SQL语句,并通过pnpm prisma migrate resolve命令应用这条记录。
- 最终执行prisma migrate dev命令实现完美迁移。
➡️