Supabase 入門:開源 Firebase 替代方案完整教學

Supabase 是基於 PostgreSQL 的開源後端即服務平台,「2024 年 4 月完成 8000 萬美元 D 輪融資,估值達 20 億美元」(來源:Supabase 官方部落格),提供與 Firebase 對等的即時資料庫、認證、儲存與邊緣函式功能,但保留完整 SQL 控制權與資料可攜性。對於需要關聯式資料模

Supabase 是基於 PostgreSQL 的開源後端即服務平台, 「2024 年 4 月完成 8000 萬美元 D 輪融資,估值達 20 億美元」(來源:Supabase 官方部落格) ,提供與 Firebase 對等的即時資料庫、認證、儲存與邊緣函式功能,但保留完整 SQL 控制權與資料可攜性。對於需要關聯式資料模型、複雜查詢、或不願被 Google 雲端鎖定的開發者,Supabase 是 2026 年最務實的選擇。 Supabase 與 Firebase 的核心差異 最關鍵的差異在資料模型:Supabase 使用 PostgreSQL 關聯式資料庫,Firebase Firestore 使用 NoSQL 文件資料庫。這決定了兩者適用場景完全不同。 PostgreSQL 是 「2024 年 Stack Overflow 開發者調查中最受喜愛的資料庫,使用率 49%,連續第二年超越 MySQL」(來源:Stack Overflow Developer Survey 2024) 。Supabase 直接基於它,意味著任何 SQL 知識、ORM 工具、資料分析技能都能無縫遷移。Firebase 則需要學習其專屬的查詢 API,且不支援 JOIN、複雜聚合查詢。 另一個關鍵差異是開源與授權。Supabase 採用 Apache 2.0 授權,可完全自架(self-host)於任何雲端或本地伺服器。Firebase 是 Google 專有服務,遷移成本極高。 功能對照 資料庫 :Supabase = PostgreSQL(關聯式、SQL);Firebase = Firestore(NoSQL、文件式) 即時訂閱 :兩者皆支援,Supabase 透過 PostgreSQL 邏輯複製實作 認證 :Supabase Auth(GoTrue)支援 OAuth、Magic Link、SAML、MFA;Firebase Auth 功能相近 檔案儲存 :Supabase Storage 基於 S3 相容協議;Firebase Storage 綁定 Google Cloud Storage 函式計算 :Supabase Edge Functions 基於 Deno;Firebase Cloud Functions 基於 Node.js 向量搜尋 :Supabase 內建 pgvector 擴充,Firebase 需另接 Vertex AI 從零開始:建立第一個 Supabase 專案 註冊與建立專案的時間成本約 2 分鐘。前往 supabase.com 以 GitHub 帳號登入,點選「New Project」,選擇地區(建議東南亞用戶選 Singapore,台灣用戶延遲約 50ms)、輸入資料庫密碼,等待約 90 秒專案即建立完成。 免費方案包含 500MB 資料庫、1GB 檔案儲存、2GB 流量、5 萬月活躍使用者,足以支撐中小型側專案上線。 建立資料表 進入專案後台後,於「Table Editor」可視覺化建立資料表,或於「SQL Editor」直接寫 SQL: CREATE TABLE posts ( id BIGSERIAL PRIMARY KEY, title TEXT NOT NULL, content TEXT, author_id UUID REFERENCES auth.users(id), created_at TIMESTAMPTZ DEFAULT NOW() ); 注意 auth.users 是 Supabase 內建的使用者表,可直接以外鍵關聯。這個設計讓認證與業務資料天然整合,省去 Firebase 中需要自行同步 Auth UID 與 Firestore 文件的繁瑣工作。 啟用 Row Level Security(RLS) RLS 是 Supabase 安全模型的核心。預設所有資料表對前端 API 都需明確授權,否則拒絕存取。建立資料表後務必執行: ALTER TABLE posts ENABLE ROW LEVEL SECURITY; CREATE POLICY "users can read own posts" ON posts FOR SELECT USING (auth.uid() = author_id); 這條政策意思是:使用者只能讀取自己 author_id 的文章。這種授權邏輯寫在資料庫層而非應用層,攻擊者即使取得 API Key 也無法繞過。 前端整合:JavaScript 客戶端實戰 Supabase 官方 JavaScript SDK(@supabase/supabase-js)是最成熟的客戶端, 「在 npm 每週下載量超過 220 萬次(2026 年 5 月數據)」(來源:npm 官

相關工具書

由 FeiYueh 親自審稿驗證 · 最後更新於 2026-05-23. Independently maintained — not AI-generated boilerplate.

← Back to Blog