开发指南
数据库开发流程
配置 Cloudflare D1 数据库
数据库操作命令
1、本地数据库开发
2、远程数据库开发
解释说明
本地数据库开发流程
1. pnpm run db:touch
- 作用:初始化或检查本地 D1 数据库连接
- 实际执行:通过 wrangler 在本地执行 SQL 查询来验证数据库是否可访问
- 使用场景:项目初始化或确认数据库状态
2. pnpm run db:generate
- 作用:根据你的 Drizzle schema 文件生成数据库迁移文件
- 实际执行:
drizzle-kit generate命令 - 使用场景:当你修改了数据库 schema 定义后需要生成对应的迁移脚本
3. pnpm run db:push
- 作用:直接将 schema 变更推送到本地数据库(跳过迁移文件)
- 实际执行:
drizzle-kit push命令 - 使用场景:开发阶段快速原型设计,不需要保留迁移历史
4. pnpm run db:migrate:dev
- 作用:在本地环境应用数据库迁移
- 实际执行:使用 wrangler 将迁移文件应用到本地 D1 数据库
- 使用场景:执行正式的数据库结构变更
5. pnpm run db:studio
- 作用:启动 Drizzle Studio 可视化数据库管理界面
- 实际执行:
drizzle-kit studio命令 - 使用场景:可视化查看和编辑本地数据库数据
远程数据库开发流程
1. pnpm run db:generate
- 与本地环境相同,生成迁移文件
2. pnpm run db:push:prod
- 作用:将 schema 变更推送到生产环境数据库
- 实际执行:在
NODE_ENV=production环境下执行drizzle-kit push - 使用场景:直接更新生产数据库结构(谨慎使用)
3. pnpm run db:migrate:prod
- 作用:在生产环境应用数据库迁移
- 实际执行:使用 wrangler 将迁移文件应用到远程 D1 数据库
- 使用场景:正式部署数据库变更到生产环境
4. pnpm run db:studio:prod
- 作用:连接到生产环境数据库的可视化管理界面
- 实际执行:在生产环境配置下启动 Drizzle Studio
- 使用场景:查看或管理生产环境数据
工作流程建议
开发阶段:
- 修改 schema 文件
- 运行
pnpm run db:generate生成迁移 - 运行
pnpm run db:migrate:dev应用到本地 - 使用
pnpm run db:studio验证变更
部署阶段:
- 确保本地测试完成
- 运行
pnpm run db:migrate:prod应用到生产环境 - 必要时使用
pnpm run db:studio:prod验证部署结果