將 Lakebase 資料庫作為 Databricks Apps 資源,以持續保存跨部署的資料。 這些 PostgreSQL 支援的資源可讓您的應用程式建立和管理保留狀態的架構和數據表。
以下類型的 Lakebase 資料庫資源可供使用:
這兩種類型都使用相同的 PostgreSQL 連線模型,並為你的應用程式提供相同的環境變數。
新增資料庫資源
在新增 Lakebase 資料庫作為資源之前,請先檢視 應用程式資源的前置條件。
備註
2026 年 3 月 12 日之後你無法建立新的 Provisioned 資料庫,但你可以將現有的資料庫加入為應用程式資源。 請參見 預設自動縮放。
- 在 應用程式資源 區塊建立或編輯應用程式時,點擊 + 新增資源>資料庫。
- 選擇一個資料庫。 對於 Lakebase 自動縮放,請選擇專案、分支和資料庫。 對於 Lakebase Provisioned,選擇一個資料庫實例和該實例中的一個資料庫。
- 為您的應用程式選取適當的權限層級。 目前,唯一可用的權限是 可以連線和建立。
- (選用)指定自訂資源索引鍵,這是您在應用程式組態中參考資料庫的方式。 預設鍵是
postgres的 Lakebase Autoscaling 和database的 Lakebase Provisioned。
你必須擁有 CAN MANAGE Lakebase 專案的權限,才能將其加入為應用程式資源。
當您新增資料庫資源時:
- Azure Databricks 會在所選資料庫中建立一個 PostgreSQL 角色。 角色名稱符合 服務主體的 用戶端標識碼。 如果該角色已經存在,Azure Databricks 會重複使用它。
- Azure Databricks 會授予服務負責人
CONNECT和CREATE權限,適用於所選資料庫。 這些許可權可讓應用程式在資料庫中建立架構和數據表。 - 對於 Lakebase 自動擴展,新增資源的使用者必須擁有
CAN MANAGE專案權限。
環境變數
當你部署一個包含資料庫資源的應用程式時,Azure Databricks 會為第一個資料庫資源設定以下環境變數。
如果你的應用程式使用多個 PostgreSQL 資料庫,這些變數只會反映第一個。 使用 valueFrom 資源金鑰來取得資料庫的連線細節。 請參閱 使用環境變數來存取資源。
| 變數 | 說明 |
|---|---|
PGAPPNAME |
應用程式名稱 |
PGDATABASE |
資料庫名稱 |
PGHOST |
PostgreSQL 伺服器的主機名 |
PGPORT |
PostgreSQL 伺服器的埠 |
PGSSLMODE |
連線的 SSL 模式 |
PGUSER |
服務主體的用戶端識別碼和角色名稱 |
拿掉資料庫資源
如果您從應用程式移除資料庫資源,應用程式會嘗試將服務主體所擁有的所有物件重新指派給移除資源的使用者。
應用程式所使用的邏輯主要取決於你在資料庫中是否有角色:
| 您的許可權 | 在資料庫中的角色? | 結果 |
|---|---|---|
CAN MANAGE |
是的 | Azure Databricks 會重新指派服務主體擁有的所有物件給你,並刪除服務主體的角色。 |
CAN MANAGE |
否 | Azure Databricks 會幫你建立一個角色,將服務主體角色擁有的所有物件重新指派給你,並刪除服務主體的角色。 |
不 CAN MANAGE |
N/A | Azure Databricks 會移除該資源,但不會刪除該角色或重新指派所有權。 UI 中會出現警告,您稍後必須手動清除角色和擁有的物件。 |
註釋
當您將資料庫新增為應用程式資源時,請考慮下列事項:
- 如果你從一個資料庫中撤銷
CONNECT和CREATE,並在同一個更新中授權給另一個資料庫,Azure Databricks 會更新權限,但不會重建服務主體的角色。 - 資料庫持續保存狀態。 即使在您重新部署或停止應用程式之後,應用程式所建立的任何架構或數據表仍會維持不變。