Prisma Migrate

轻松无忧的
数据库迁移

Prisma Migrate利用Prisma schema的变化自动生成完全可定制的数据库schema迁移

schema.prisma
1model User {
2 id Int @id @default(autoincrement())
3 email String @unique
4 name String?
5}
init/20210211160000_init/migration.sql
-- CreateTable
CREATE TABLE "User" (
"id" SERIAL NOT NULL,
"email" TEXT NOT NULL,
"name" TEXT,
PRIMARY KEY ("id")
);
-- CreateIndex
CREATE UNIQUE INDEX "User.email_unique" IN "User"("email");

自动生成

迁移是自动生成的,因此您无需手动编写SQL。

确定性/可重复

Migrate生成SQL迁移,确保迁移在不同环境中始终生成相同的数据库schema。

可定制

生成的SQL迁移可以完全定制,让您可以完全控制具体的更改。

迭代

开发快速

无需迁移即可快速原型开发

在原型开发阶段,您可以使用prisma db push命令快速创建数据库schema,而无需创建迁移。

集成数据填充

通过使用JavaScript、TypeScript或Shell定义数据填充脚本,快速为数据库填充数据。

智能问题解决

Migrate检测数据库schema漂移并协助您解决这些问题。

部署

生产环境可靠

专用的生产工作流程

Migrate支持专用的工作流程,以便在生产环境中安全地执行迁移。

CI/CD集成

Migrate可以集成到CI/CD管道中,例如GitHub Actions,以在部署前自动化应用迁移。

冲突检测与解决

Migrate跟踪已应用的迁移,并提供工具来检测和解决迁移与数据库schema之间的冲突和漂移。

与Prisma Client无缝集成

将Prisma Migrate与Prisma Client一起使用时,schema更改会在您的应用程序代码中进行类型检查。这消除了因数据库schema更改需要更改应用程序代码而导致的错误。

声明式数据建模

Prisma Migrate根据Prisma schema(一种人类可读的声明式数据库schema定义)中的更改生成迁移。这让您可以专注于期望的数据库schema,而不是达到该状态的步骤。

数据库的版本控制

使用Prisma Migrate,生成的迁移在您的Git仓库中进行跟踪,从而允许您在更改应用程序代码的同时更改数据库schema。

简化的协作

Prisma Migrate通过提供工作流程,使团队在上线生产环境之前轻松审查和测试数据库schema更改,从而实现顺畅协作。

将Prisma Migrate引入您的项目

Prisma Migrate可用于任何使用PostgreSQL、MySQL、MariaDB、SQL Server、CockroachDB或SQLite的现有项目。