跳到主要内容

从本地环境部署迁移

有两种情况您可能会考虑直接从本地环境向生产环境部署迁移。

  • 您有一个本地 CI/CD 管道
  • 您正在基线化生产环境

本页概述了如何进行此类操作的一些示例,并说明了我们通常不推荐它的原因

本地 CI/CD 管道

如果您没有自动化 CI/CD 流程,您可以通过以下方式从本地环境技术性地将新迁移部署到生产环境:

  1. 确保您的迁移历史是最新的。您可以通过运行 prisma migrate dev 来完成此操作,它将根据最新更改生成迁移历史。
  2. 将您的本地连接 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"
  1. 运行 prisma migrate deploy

由于以下原因,我们强烈不建议采用此解决方案

  • 您有将生产数据库连接 URL 暴露给版本控制的风险。
  • 您可能会意外地使用生产连接 URL,进而覆盖或删除您的生产数据库

我们建议设置自动化 CI/CD 管道

该管道应处理到暂存和生产环境的部署,并在管道步骤中使用 migrate deploy。有关示例,请参阅部署指南

基线化生产数据库

当您将 Prisma Migrate 添加到现有数据库时,您必须基线化生产数据库。基线化操作只需执行一次,并且可以从本地实例完成。

Baselining production from local with Prisma ORM

© . All rights reserved.