Supabase #
什么是Supabase? #
Supabase是一个开源的Firebase替代品,基于PostgreSQL构建,提供了一整套后端服务。它让你可以在几分钟内搭建起一个完整的后端系统,无需管理服务器基础设施。
Supabase核心功能 #
| 功能 | 说明 |
|---|---|
| 数据库 | 基于PostgreSQL的关系型数据库,完整SQL支持 |
| 认证 | 多种认证方式,包括邮箱、OAuth、魔法链接等 |
| 存储 | 文件存储服务,支持图片处理和CDN加速 |
| 实时订阅 | 实时数据同步,支持WebSocket |
| Edge Functions | 边缘函数,支持Deno运行时 |
| 向量搜索 | 内置pgvector,支持AI应用 |
Supabase vs Firebase #
| 特性 | Supabase | Firebase |
|---|---|---|
| 数据库 | PostgreSQL (关系型) | Firestore (文档型) |
| 开源 | 完全开源 | 闭源 |
| 数据所有权 | 完全拥有 | Google托管 |
| SQL支持 | 完整支持 | 有限支持 |
| 复杂查询 | 强大 | 较弱 |
| 定价 | 按用量付费,有免费额度 | 按用量付费 |
| 自托管 | 支持 | 不支持 |
文档结构 #
本指南按以下结构组织,适合初学者按顺序学习:
1. 基础入门 #
| 主题 | 描述 | 文档链接 |
|---|---|---|
| Supabase简介 | Supabase的发展历史、特点、应用领域 | supabase-intro.md |
| 安装与配置 | 开发环境搭建、CLI工具安装 | supabase-install.md |
| 项目创建 | 创建Supabase项目、获取配置信息 | project-setup.md |
| 客户端初始化 | 各平台客户端SDK初始化 | client-setup.md |
2. 数据库基础 #
| 主题 | 描述 | 文档链接 |
|---|---|---|
| 数据库概述 | PostgreSQL基础、表编辑器使用 | database-overview.md |
| 表操作 | 创建、修改、删除表 | table-operations.md |
| 数据类型 | PostgreSQL数据类型详解 | data-types.md |
| 数据插入 | INSERT操作、批量插入 | insert.md |
| 数据查询 | SELECT操作、过滤、排序、分页 | select.md |
| 数据更新 | UPDATE操作、条件更新 | update.md |
| 数据删除 | DELETE操作、软删除 | delete.md |
3. 认证系统 #
| 主题 | 描述 | 文档链接 |
|---|---|---|
| 认证概述 | 认证系统架构、用户表结构 | auth-overview.md |
| 邮箱密码认证 | 注册、登录、邮箱验证 | email-password.md |
| OAuth社交登录 | GitHub、Google、Apple等第三方登录 | oauth.md |
| 魔法链接 | 无密码登录、邮件链接登录 | magic-link.md |
| 手机号认证 | 短信验证码登录 | phone-auth.md |
| 用户管理 | 用户信息、会话管理、权限控制 | user-management.md |
4. 存储服务 #
| 主题 | 描述 | 文档链接 |
|---|---|---|
| 存储概述 | 存储架构、存储桶概念 | storage-overview.md |
| 存储桶管理 | 创建、配置、权限设置 | bucket-management.md |
| 文件上传下载 | 文件操作、断点续传 | file-operations.md |
| 图片处理 | 图片缩放、裁剪、格式转换 | image-transformations.md |
5. 实时订阅 #
| 主题 | 描述 | 文档链接 |
|---|---|---|
| 实时订阅概述 | WebSocket原理、订阅模式 | realtime-overview.md |
| 数据库变更监听 | 监听INSERT/UPDATE/DELETE事件 | database-changes.md |
| 广播与状态 | 多客户端同步、在线状态 | broadcast-presence.md |
6. Edge Functions #
| 主题 | 描述 | 文档链接 |
|---|---|---|
| Functions概述 | 边缘函数概念、Deno运行时 | functions-overview.md |
| 创建与部署 | 编写、测试、部署函数 | create-deploy.md |
| 本地开发 | 本地调试、环境变量 | local-development.md |
| 函数调用 | HTTP调用、认证、错误处理 | invoke.md |
7. 高级特性 #
| 主题 | 描述 | 文档链接 |
|---|---|---|
| 行级安全策略 | RLS策略、权限控制 | rls.md |
| 数据库函数 | 存储过程、自定义函数 | database-functions.md |
| 数据库触发器 | 自动化操作、事件响应 | triggers.md |
| 全文搜索 | PostgreSQL全文搜索 | full-text-search.md |
| 向量搜索 | pgvector、AI应用 | vector-search.md |
8. 管理与运维 #
| 主题 | 描述 | 文档链接 |
|---|---|---|
| CLI工具 | Supabase CLI使用 | cli.md |
| 迁移管理 | 数据库迁移、版本控制 | migrations.md |
| 备份与恢复 | 数据备份、灾难恢复 | backup-restore.md |
| 监控与日志 | 性能监控、日志分析 | monitoring.md |
9. 扩展生态 #
| 主题 | 描述 | 文档链接 |
|---|---|---|
| 框架集成 | Next.js、Nuxt、SvelteKit集成 | frameworks.md |
| 第三方集成 | Vercel、Netlify、Stripe集成 | integrations.md |
| 自托管部署 | Docker部署、Kubernetes部署 | self-hosting.md |
学习路线 #
text
入门阶段 (1-2周)
├── Supabase简介
├── 项目创建
├── 客户端初始化
└── 基础CRUD操作
基础阶段 (2-4周)
├── 数据库操作
├── 认证系统
├── 存储服务
└── 实时订阅
进阶阶段 (1-2月)
├── Edge Functions
├── 行级安全策略
├── 数据库函数
└── 触发器
高级阶段 (2-3月)
├── 全文搜索
├── 向量搜索
├── 性能优化
└── 自托管部署
适用人群 #
| 人群 | 建议 |
|---|---|
| 前端开发者 | 快速搭建后端,专注前端开发 |
| 全栈开发者 | 提升开发效率,快速迭代产品 |
| 创业者 | 快速MVP开发,降低开发成本 |
| 学生 | 学习现代后端开发技术 |
学习建议 #
- 动手实践:创建免费项目,多写代码
- 理解原理:学习PostgreSQL基础知识
- 阅读文档:官方文档是最权威的资料
- 项目实战:结合实际项目学习
- 社区交流:参与社区讨论,解决问题
版本说明 #
本教程基于 Supabase 最新版本编写,涵盖所有核心功能。
Supabase核心优势 #
| 优势 | 说明 |
|---|---|
| 开源免费 | Apache 2.0协议,可自托管 |
| PostgreSQL | 强大的关系型数据库,完整SQL支持 |
| 开发效率 | 几分钟搭建完整后端 |
| 实时功能 | 内置WebSocket支持 |
| 安全性 | 行级安全策略,细粒度权限控制 |
| 可扩展 | 支持扩展,灵活定制 |
开始你的Supabase学习之旅吧!
最后更新:2026-03-28