UStackUStack
Netlify Database icon

Netlify Database

Netlify Database 內建零設定、全托管 Postgres:自動套用遷移,並在部署預覽建立獨立分支,方便安全測試。

Netlify Database

Netlify Database 是什麼?

Netlify Database 是內建於 Netlify 平台的完全託管 Postgres 資料庫。它會為您佈建和管理資料庫,包括套用遷移以及建立符合 Netlify 部署工作流程的資料庫分支。

核心目的是讓您使用關聯式資料庫建置全端應用程式,並與程式碼變更保持同步—無需手動管理獨立的預備環境資料庫或手動執行結構描述更新。

主要功能

  • Netlify 上的完全託管 Postgres:Netlify 負責佈建,讓您的應用程式無需設定基礎設施即可開始使用 Postgres 資料庫。
  • 與部署綁定的自動遷移:內建遷移系統會追蹤儲存庫中的結構描述變更,並在生產部署與部署預覽期間自動套用。
  • 與部署預覽整合的動態資料庫分支:部署預覽會在建立時從生產資料複製一份,建立專屬資料庫分支。
  • 設計上保護生產存取:僅生產部署可存取主資料庫,降低實驗影響即時資料的風險。
  • AI 工作流程的獨立環境:Agent 執行會自動取得專屬資料庫分支,Netlify 提供「Agent Runners」整合環境,讓代理程式在獨立環境中處理結構描述變更與查詢。

如何使用 Netlify Database

  1. 建立或選擇支援 Netlify Database 的點數制 Netlify 方案(Netlify Database 僅適用於點數制方案)。
  2. 在儲存庫中實作結構描述與遷移,採用文件記載的遷移方式;Netlify 會追蹤結構描述變更,並在部署生命週期適當時機套用。
  3. 正常部署應用程式至生產環境,並透過慣用工作流程建立部署預覽(例如開啟拉取請求)。
  4. 安全測試變更:使用部署預覽;Netlify 會將每個部署預覽連接到其專屬資料庫分支,並在預覽建立時從生產環境複製。

使用情境

  • 無需偏離生產環境驗證結構描述變更:自動遷移會在生產部署與部署預覽上執行,確保資料庫結構描述符合部署的程式碼版本。
  • 安全測試變更資料的新功能:例如,您可在部署預覽分支驗證文章刪除流程,而不移除主生產資料庫的內容。
  • 平行開發時避免跨團隊干擾:若同時進行多項變更,各部署預覽分支可獨立演進,不會因單一共享預備環境資料庫而阻塞。
  • 快速從不良遷移或查詢中復原:若實驗變更包含意外影響資料的查詢,您可重置受影響的資料庫分支,而不影響即時網站。
  • 使用獨立資料存取執行 AI 代理程式:使用 Agent Runners 時,每個代理程式執行會取得專屬資料庫分支,讓實驗(包含結構描述變更)不會危害生產資料。

常見問題

Netlify Database 適用於所有 Netlify 方案嗎?

Netlify Database 僅適用於點數制方案。

資料庫儲存是否消耗點數?

資料庫啟用時,會因運算與頻寬使用而消耗點數。文件亦說明,資料庫儲存空間免費至 2026 年 7 月 1 日。

結構描述遷移如何套用?

Netlify Database 包含自動遷移系統,會追蹤儲存庫中的結構描述變更,並在生產部署與部署預覽時自動套用。

部署預覽資料隔離如何運作?

部署預覽首次建立時,Netlify 會為其資料庫分支複製生產資料。預覽生命週期中的變更不會影響生產資料庫。

資料庫分支對 AI 代理程式的角色為何?

Agent 執行會自動連接到專屬資料庫分支,讓您在獨立環境中進行實驗與結構描述迭代。

替代方案

  • 自管 Postgres 搭配 staging:自行運行 Postgres 實例(生產 + staging),並手動或透過 CI/CD 管理遷移。這可能類似 Netlify Database 的工作流程,但您通常需自行處理 schema 漂移與環境同步。
  • 資料庫即服務(託管 Postgres)搭配獨立環境:使用託管 Postgres 提供商,為 staging 與測試建立獨立資料庫/結構描述。您仍需協調分支般的隔離與遷移時機。
  • 遷移工具搭配應用程式管理工作流程:使用遷移框架,透過部署管道套用遷移。這可控制遷移執行時機,但無法自動獲得本文所述的部署預覽資料庫分支。