用途:PlanetScale 是基于 Vitess 的无服务器 MySQL 兼容数据库,提供数据库分支、非阻塞 schema 变更和水平扩展能力,常用于配合 Prisma 构建应用。
主要能力:支持生产/开发分支与部署请求;schema 变更不锁表(如 ALTER TABLE 添加列或索引);自动连接池;Insights 面板查看慢查询、查询模式与索引建议。
使用方式:先安装并登录 CLI:brew install planetscale/tap/pscale、pscale auth login。创建数据库:pscale database create my-app --region us-east;创建分支:pscale branch create my-app feature-users;本地连接:pscale connect my-app feature-users --port 3309。连接字符串格式为 mysql://username:password@aws.connect.psdb.cloud/database?ssl={"rejectUnauthorized":true}。Prisma 侧安装 npm install prisma @prisma/client 与 @prisma/adapter-planetscale(无服务器场景),schema 中使用 provider = "mysql",无服务器驱动需启用 previewFeatures = ["driverAdapters"];推送用 npx prisma db push,再用 npx prisma generate。部署流程:pscale deploy-request create、pscale deploy-request diff、pscale deploy-request deploy。
适用场景:Next.js 的 API Route 与 Server Component 数据读写、Edge/Serverless 环境、需要分支式开发与无锁迁移的团队。
限制与注意:需用 db push 而非 migrate;关闭外键约束时须设 relationMode = "prisma" 并手动为外键列建索引;事务批量并非真正 ACID;生产分支受保护,需走部署请求;相关价格与平台细节暂未提供。