從本地環境部署遷移
有兩種情況您可能會考慮直接從本地環境向生產環境部署遷移。
- 您有一個本地 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 新增到現有資料庫時,您必須基線化生產資料庫。基線化操作只需執行一次,並且可以從本地例項完成。
