SaaS 使用 PostgreSQL:Neon、Supabase、RDS 或自建
用 Drizzle ORM 把 ShipAny 应用跑在 PostgreSQL 上——Neon、Supabase 和托管 Postgres 的连接串、表结构初始化、生产迁移以及 Cloudflare Hyperdrive。
最后更新: 2026年10月8日
PostgreSQL 是 ShipAny 应用最常用的生产数据库。ShipAny 通过 Drizzle ORM 和专门的 Postgres 表结构访问它,任何提供标准连接串的服务都能用:Neon、Supabase、AWS RDS、阿里云 RDS,或你自己的服务器。
ShipAny 帮你做了什么
- Postgres 表结构模板:包含全部内置表——登录、订单、订阅、积分、API Key、权限、配置和内容——每张表都有完整的 TypeScript 类型。
- 开发与生产两套流程:本地用
db:push快速迭代,生产用db:generate+db:migrate生成可审查的 SQL 迁移。 - 可选 Schema:设置
DB_SCHEMA即可使用public以外的 schema。 - 支持 Cloudflare Workers:通过 Hyperdrive 在数据库附近维护连接池。
配置步骤
- 创建数据库并复制连接串:
- Neon:控制台点击 Connect——
postgresql://…neon.tech/neondb?sslmode=require - Supabase:Connect → ORMs → Drizzle——把
[YOUR-PASSWORD]换成数据库密码
- Neon:控制台点击 Connect——
- 设置环境变量:
DATABASE_PROVIDER=postgresql
DATABASE_URL=<你的 Postgres 连接串>
- 复制 Postgres 表结构模板并建表:
pnpm db:setup
pnpm db:push # 开发环境
# 生产环境:pnpm db:generate && pnpm db:migrate
- 运行
pnpm rbac:init初始化角色和权限。
注意事项
- 不要对生产库使用
db:push——先生成迁移,检查 SQL 里有没有破坏性操作。 - 先用
psql测试连接再排查应用问题,大多数问题出在 SSL 参数或 IP 白名单。 - 在 Cloudflare Workers 上,运行时通过 Hyperdrive 连接,迁移则直接连 Postgres 执行,不经过 Hyperdrive。
