从本地环境部署迁移
在以下两种情况下,您可以考虑直接从本地环境将迁移部署到生产环境。
- 您拥有本地 CI/CD 管道
- 您正在为生产环境进行 基线化
本页概述了您可以如何执行此操作的一些示例,以及 我们通常不建议这样做的原因。
本地 CI/CD 管道
如果您没有自动化的 CI/CD 流程,从技术上讲,您可以通过以下方式从本地环境将新迁移部署到生产环境
- 确保您的迁移历史记录是最新的。您可以通过运行
prisma migrate dev
来执行此操作,这将从最新的更改生成迁移历史记录。 - 将您的本地连接 URL 替换为您的生产连接 URL
.env
//delete-next-line
DATABASE_URL="postgresql://johndoe:randompassword@localhost:5432/my_local_database"
//add-next-line
DATABASE_URL="postgresql://johndoe:randompassword@localhost:5432/my_production_database"
- 运行
prisma migrate deploy
⛔
由于以下原因,我们强烈建议不要使用此解决方案
- 您有将生产数据库连接 URL 暴露给版本控制的风险。
- 您可能会意外地使用您的生产连接 URL,从而覆盖或删除您的生产数据库。
✅ 我们建议设置自动化的 CI/CD 管道
管道应处理到暂存环境和生产环境的部署,并在管道步骤中使用 migrate deploy
。有关示例,请参阅部署指南。
为生产数据库建立基线
当您将 Prisma Migrate 添加到现有数据库时,您必须建立基线生产数据库。基线化操作仅执行一次,并且可以从本地实例完成。