Visual Studio Code 的 PostgreSQL 擴充功能讓你可以在不離開編輯器的情況下建立新的 PostgreSQL 伺服器。 你可以建立本地 Docker 容器用於開發與測試,配置一個完全管理的 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器用於生產工作負載,或建立 Azure HorizonDB(預覽版)叢集以應付高規模情境。
先決條件
- 已安裝擴充功能的 Visual Studio Code。
-
若使用本機 Docker 伺服器:Docker Desktop 已安裝,且 Docker 守護程序正在執行。 透過在終端機中運行
docker info來驗證。 - 對於 Azure 伺服器:一個有有效訂閱的 Azure 帳號。 如果您沒有帳戶,可免費建立帳戶。
- 若要使用 Azure HorizonDB(預覽版)叢集:您必須有一個具有有效訂閱,且具有 Azure HorizonDB(預覽版)存取權的 Azure 帳戶。
開啟「建立新伺服器」中心
在 PostgreSQL 活動列容器中,找到 連線 樹。
在連接樹頂端選擇「建立新伺服器」按鈕,或從指令面板執行
pgsql.createNewServer。你也可以在 連線 樹中右鍵點擊伺服器群組,選擇 建立新伺服器。
「建立新的 PostgreSQL Server hub」會在一個新的編輯器分頁中開啟。它提出了三個選項:
| Option | Description |
|---|---|
| 建立本地的 Docker PostgreSQL 伺服器 | 在本地 Docker 容器中建立 PostgreSQL 伺服器。 非常適合開發、測試和學習。 |
| Create a 適用於 PostgreSQL 的 Azure 資料庫 Flexible Server Instance | 在 Azure 中配置一個完全受管理的 PostgreSQL 伺服器。 適合生產工作負載和團隊環境。 |
| Create an Azure HorizonDB Instance (Preview) | 在 Azure 中配置一個雲端原生、高度可擴展的 PostgreSQL 叢集。 |
選擇與你情境相符的卡牌。
用 Docker 建立本地伺服器
Docker 容器提供一個輕量級、獨立的 PostgreSQL 實例,能在你的機器上運行。 在本地開發、原型設計或需要一次性資料庫環境時,使用此選項。
步驟一:複習引言
當你選擇「 建立本地 Docker PostgreSQL Server 」卡片後,擴充功能會顯示一個標題為 「Seamless PostgreSQL Server on Docker, Right in VS Code!」的登陸頁面。 該頁面強調了主要功能:
- One-Click 伺服器建立:幾秒鐘內即可啟動 PostgreSQL 伺服器,無需手動設定。
- 全自動設定:擴充功能在隔離環境中拉取、配置並執行 PostgreSQL。
- 簡單管理:隨時啟動、停止或移除你的 PostgreSQL 容器。
選擇 「開始 」以繼續。
步驟二:通過先修科目檢查
擴充功能會檢查 Docker 是否已安裝並執行。 檢查先決條件畫面會顯示各項檢查的狀態:
-
檢查是否安裝了 Docker:驗證 Docker CLI 是否可用在您的
PATH. - 檢查 Docker 是否在背景執行:確認 Docker 守護程序仍在運作。
如果檢查失敗,請依照螢幕上的連結安裝或啟動 Docker,然後返回此頁面。 擴充功能會自動重執行檢查。
步驟 3:設定連線
通過前置條件後,會出現 「設定您的連線 」表單。 填寫下列欄位:
| 設定 | Required | Description |
|---|---|---|
| 連線名稱 | No | 連線設定檔的友善顯示名稱。 同時也是預設容器名稱(空格被底線取代)。 |
| 容器名稱 | Yes | Docker 容器名稱。 允許使用字元: a-zA-Z0-9_.-。 |
| 使用者名稱 | Yes | PostgreSQL 實例的超級使用者名稱。 預設為 postgres。 |
| 密碼 | Yes | 超級用戶帳號的密碼。 |
| 儲存密碼 | No | 選擇後會儲存密碼,這樣你就不用每次連線都輸入密碼。 |
| 資料庫名稱 | No | 初始資料庫名稱。 預設為 postgres。 |
選擇 進階選項 以展開更多設定:
| 設定 | Description |
|---|---|
| 已綁定的連接埠 | 主機連接埠對應到容器的 PostgreSQL 連接埠(容器連接埠 5432)。 若留空,擴充功能會自動指派 54500-55000 範圍內的一個可用連接埠。 有效範圍: 1-65535。 |
| 映像版本 | 要擷取的 Docker 映像檔標籤 預設為 latest。 |
| 影像登錄 | 容器登錄檔 URL(例如, myregistry.azurecr.io)。 預設為 Docker Hub。 |
| 圖片名稱 | Docker 映像檔名稱。 預設為 postgres。 |
| 影像平台 | 多架構環境的平台目標(例如, linux/amd64)。 |
步驟四:創建並連結
選擇 建立 開始配置。 延伸內容:
- 提取
postgresDocker 映像檔(如果尚未快取)。 - 以指定設定建立並啟動容器。
- 等待 PostgreSQL 就緒(使用
pg_isready)。 - 建立連線設定檔並自動連線。
一個名為 「建立本地 Docker 伺服器」 的進度指示器會在容器初始化時出現。 容器準備好後,伺服器會出現在 連線 樹中,你可以立即開始查詢。
Tip
Docker 容器會在 Visual Studio Code 重啟後持續存在。 若要停止、啟動、移除或檢查擴充套件外的容器,請使用 Docker CLI 或 Docker 桌面。
建立適用於 PostgreSQL 的 Azure 資料庫彈性伺服器
適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器是一項完全受管理的資料庫服務,提供高可用性、自動備份及智慧效能調校。 這個擴充功能會引導你完成多步驟嚮導,直接從 Visual Studio Code 配置新伺服器。
步驟一:複習引言
當你選擇「為 適用於 PostgreSQL 的 Azure 資料庫 Flexible Server Instance 建立」卡片後,會有一個著陸頁描述服務功能:
- 無縫 Azure 整合:直接在 Visual Studio Code 中配置伺服器,並支援 Entra ID 認證。
- 彈性運算與儲存:可從預設的運算層級與儲存選項中選擇。
- 簡化伺服器管理:管理生命週期、效能與設定,無需離開編輯器。
- 為開發者打造:專注於你的應用程式,而 Azure 則負責基礎設施。
選擇 「開始 」以繼續。 可選擇 「不再顯示此內容 」以跳過此頁面。
步驟 2:登入 Azure
擴充功能會開啟一個登入頁面,顯示訊息:「請用 Entra ID 登入你的 Azure 帳號以建立一個適用於 PostgreSQL 的 Azure 資料庫靈活的伺服器實例。」
- 如果你已經有登入 Visual Studio Code 的 Azure 帳號,擴充功能會自動使用這些憑證。
- 如果你有多個 Azure 帳號或租戶,請使用帳號切換器和租戶選擇器來選擇正確的身份。
步驟 3:設定伺服器設定
認證後,擴充功能會顯示一個分區組織的配置表單。 右側的成本估算面板會在你進行選擇時更新。
項目詳細數據
| 設定 | Description |
|---|---|
| Subscription | 選擇管理帳單和存取的 Azure 訂閱。 系統已列出您已登入的帳戶和租用戶的所有訂閱。 |
| 資源群組 | 選擇現有資源群組,或選擇 建立新 資源以建立一個。 新的資源群組部署在與伺服器相同的區域。 |
基本概念
| 設定 | Description |
|---|---|
| 伺服器名稱 | 伺服器的全球唯一名稱。 該擴充功能會以非同步方式檢查名稱是否可用,若名稱已被使用則會顯示錯誤。 伺服器名稱會成為你連線主機名稱()<server-name>.postgres.database.azure.com的一部分。 |
| 區域 | 伺服器部署的 Azure 區域。 擴充功能會驗證你的訂閱是否能在所選區域佈建。 |
| 計算 + 儲存體 | 選擇預先設定的運算與儲存層級。 可用的組合包包括: |
| Bundle | vCores | 儲存體 | SKU |
|---|---|---|---|
| 開發/測試 (預設) | 2 | 128 GB | Standard_D2ds_v4 |
| Standard | 4 | 256 GB | Standard_D4ds_v4 |
| 績效 | 8 | 512 GB | Standard_D8ds_v4 |
Tip
你可以透過表單底部的「在 Azure 入口網站 建立」按鈕進一步自訂運算與儲存空間,這樣會開啟完整的 Azure portal 建立體驗。
| 設定 | Description |
|---|---|
| PostgreSQL 版本 | 要部署的 PostgreSQL 主版本。 可選版本:18、17、16、15 和 14。 預設值為 18。 可選版本可能因地區而異。 |
Authentication
表單顯示管理員 存取 區塊。 您必須啟用至少一種認證方式。
| 設定 | Description |
|---|---|
| 使用我的 Entra ID:<電子郵件> | 勾選框,將你登入的 Entra ID 身份設定為伺服器管理員。 電子郵件是從你的 Azure 登入自動填入的。 |
| 建立 PostgreSQL 使用者與密碼 | 勾選框啟用傳統 PostgreSQL 認證。 選擇後會顯示三個額外欄位。 |
當您選擇 建立 PostgreSQL 使用者與密碼時,請提供以下資訊:
| 設定 | Description |
|---|---|
| 管理員用戶名 | PostgreSQL 管理員帳號的登入名稱(例如, pgadmin。 必須以字母開頭,且僅包含字母、數字和底線。 不能使用保留名稱如 admin、 、 rootguest,或以 pg_為開頭的名字。 |
| 管理員密碼 | 管理員帳號的密碼。 字元必須為8至128個,且至少包含三個:大寫字母、小寫字母、數字和符號。 |
| 確認管理員密碼 | 重新輸入管理員密碼。 |
Note
你可以同時啟用兩種認證方式。 例如,團隊成員使用 Entra ID,應用程式連接字串則使用 PostgreSQL 認證。
成本估算
表格右側的 預估成本 面板詳細列出每月價格:
- 計算:根據所選的 SKU 和 vCore 數量。
- 儲存:根據所選儲存等級。
- 備用:包含備用費用。
- 頻寬:跨區域的傳出資料傳輸會產生額外費用;傳入資料傳輸則免費。
面板顯示預估總額,並連結至 Azure 價格計算器以獲取詳細價格。
步驟四:接受條款並部署
在表單底部:
- 選擇「 我承認建立此伺服器可能會產生費用 」勾選框。
- 請閱讀連結的 使用條款 與 隱私政策。
- 選擇 建立 以開始配置。
擴充功能導覽至一個進度頁面,追蹤部署的每個階段:
| Stage | 狀態值 |
|---|---|
| 伺服器配置 | 待處理、 進行中、 完成、 失敗 |
| 防火牆規則指派 | 待處理、 進行中、 完成、 跳過 |
| Entra 系統管理員指派 | 待處理、 進行中、 完成、 跳過 |
部署摘要會顯示你選擇的 伺服器名稱、 訂閱、 資源群組、 區域和 設定 。
部署期間,你可以繼續使用 Visual Studio Code。 如果你關閉進度頁面,部署也會在背景執行。
當所有階段完成後,標頭會更新為 成功建立的伺服器! ,並顯示訊息:「您的 PostgreSQL 彈性伺服器已準備好。」擴充功能會自動為新伺服器建立連線設定檔。 選擇 「完成 」以關閉進度頁面。
Note
如果關卡完成時有警告,狀態會顯示 已完成並有警告。 連線前請先仔細檢視細節。
追蹤 Azure 部署
PostgreSQL 活動列中的 Azure 部署檢視會顯示所有進行中及已完成的 Azure 伺服器部署。 每個條目會顯示伺服器名稱、部署狀態及時間戳記。
以滑鼠右鍵按一下部署項目,即可使用下列操作:
| Action | Description |
|---|---|
| Open in Azure 入口網站 | 在 Azure 入口網站開啟伺服器的資源頁面。 |
| 移除部署 | 移除追蹤器中的部署條目。 這個動作不會刪除 Azure 資源。 |
請使用檢視工具列中的 「移除已完成 」按鈕,清除列表中所有已完成的部署。
Tip
如果 Azure 部署失敗,請在進度頁面選擇「再試一次」以重新啟動配置,或選擇「返回表單」來調整設定。
建立 Azure HorizonDB(預覽版)叢集
Azure HorizonDB (Preview) 是一個雲端原生、高度可擴展的 Azure PostgreSQL 叢集。 這個擴充功能會引導你完成多步驟精靈來配置新的叢集。
Note
Azure HorizonDB (Preview) 可用性取決於你的 Azure 訂閱和區域。
步驟一:複習引言
選擇「建立 Azure HorizonDB 實例」卡片後,會有一個著陸頁面描述服務功能:
- Cloud-Native 架構:一個雲端原生的 PostgreSQL 叢集,優化以追求高吞吐量。
- 彈性擴展:可將運算資源從 2 個擴展至 128 個 vCore。
- 內建管理:透過 Visual Studio Code 管理生命週期與設定。
- 開發者準備:專注於你的應用程式,讓 Azure 處理基礎架構。
選擇 「開始 」以繼續。 可選擇 「不再顯示此內容 」以跳過此頁面。
步驟 2:登入 Azure
擴充功能會開啟一個登入頁面。 如果你已經有登入 Visual Studio Code 的 Azure 帳號,擴充功能會自動使用這些憑證。 如果你有多個 Azure 帳號或租戶,請使用帳號切換器和租戶選擇器來選擇正確的身份。
步驟 3:設定叢集設定
認證後,擴充功能會顯示一個分區組織的配置表單。
項目詳細數據
| 設定 | Description |
|---|---|
| Subscription | 選擇管理帳單和存取的 Azure 訂閱。 |
| 資源群組 | 選擇現有資源群組,或選擇 建立新 資源以建立一個。 |
叢集詳細資料
| 設定 | Description |
|---|---|
| 叢集名稱 | 這是全球獨一無二的叢集名稱。 該擴充功能會檢查可用性,若名稱被取用則會顯示錯誤。 |
| 區域 | 叢集部署的 Azure 區域。 |
| PostgreSQL 版本 | 要部署的 PostgreSQL 主版本。 |
計算設定
使用 vCore 滑桿選擇叢集的運算容量。 可選配的 vCore 從 2 到 128 不等。 記憶體會以 每個 vCore 8 GiB 的比例自動擴展。
Authentication
| 設定 | Description |
|---|---|
| 管理員用戶名 | PostgreSQL 管理員帳號的登入名稱。 |
| 管理員密碼 | 管理員帳號的密碼。 |
| 確認管理員密碼 | 重新輸入管理員密碼。 |
人工智慧能力
AI 功能區塊讓你啟用內建的 AI 模型管理功能。 選擇 啟用 AI 功能 的勾選框以選擇加入。 啟用 AI 功能後,叢集會提供模型管理支援及pgvectorpg_diskann擴充功能。
Note
AI 能力部分僅為預覽體驗,可能不適用於所有環境或叢集配置。 如果該區塊看不到,請繼續執行標準的 Azure HorizonDB(預覽版)叢集設定與部署步驟。
步驟四:接受條款並部署
在表單底部:
- 選擇群組補充條款的勾選框。
- 如果你已啟用 AI 功能,且 AI 補充條款的核取方塊有顯示,請選取該核取方塊。
- 請閱讀連結的 使用條款 與 隱私政策。
- 選擇 建立 以開始配置。 如果表單不完整,請將滑鼠移到停用的 「建立 」按鈕上,查看哪些欄位還需要值。
擴充功能會導向一個進度頁面,追蹤部署的每個階段。 部署摘要會顯示你選擇的 叢集名稱、 訂閱、 資源群組和 設定 (vCore 和記憶體)。
當所有階段完成後,擴充會建立新叢集的連線配置檔。 選擇 「完成 」以關閉進度頁面。
Note
如果你啟用了 AI 功能,且 AI 模型管理步驟失敗,叢集仍會被建立並新增連線設定檔。 進度頁面會顯示警告和連結,讓你在 Azure 入口網站開啟叢集,讓你能手動啟用 AI 模型管理。
Tip
如果你需要擴充功能嚮導以外的選項,請在表單底部選擇「在 Azure 入口網站 配置」。
驗證伺服器
伺服器建立完成後(Docker 或 Azure):
- 在 連線 樹中展開伺服器節點。
- 確認預設資料庫(
postgres以及你指定的任何資料庫,Docker)都有列出。 - 右鍵點選資料庫並選擇 新查詢 以開啟查詢編輯器。
- 執行測試查詢,例如
SELECT version();驗證連接性。