從適用於 Postgresql 的 Azure 資料庫單一伺服器自動移轉至彈性伺服器
適用於: 適用於 PostgreSQL 的 Azure 資料庫 - 單一伺服器
從 適用於 PostgreSQL 的 Azure 資料庫 自動移轉 – 單一伺服器到彈性伺服器是服務起始的移轉,會在單一伺服器的計劃停機期間進行,與修補或維護期間分開。 此服務會識別合格的伺服器,並傳送預先通知,其中包含自動移轉程式的詳細步驟。 您可以視需要檢閱並調整移轉排程,或提交支援要求,以退出退出伺服器的自動移轉。
自動移轉會 利用 Azure PostgreSQL 移轉服務 ,在規劃的移轉期間提供復原的離線移轉。 停機時間會根據工作負載特性而有所不同,而較大的工作負載可能需要最多 20 分鐘。 如需移轉速度效能評定,請參閱 Azure PostgreSQL 移轉速度效能評定。 此移轉不需要手動伺服器移轉,讓您在移轉后受益於彈性伺服器功能,包括改善的價格效能、細微的資料庫組態控制,以及自定義維護時段。
注意
自動移轉服務會根據下列條件選取要移轉的單一伺服器:
- 單一伺服器第11版
- 沒有複雜功能的伺服器,例如 CMK、Microsoft Entra ID、讀取複本和私人端點
- 數據 <大小 = 10 GB
- 已啟用公用存取
自動移轉程式
自動移轉程式包含數個主要階段:
目標彈性伺服器建立 - 建立彈性伺服器以符合單一伺服器 SKU 的效能和成本。 它會從來源單一伺服器繼承所有防火牆規則。
數據遷移 - 資料遷移發生在指定的移轉期間,通常是在伺服器主控區域的上班時間以外排程(如果服務選擇視窗)。 來源單一伺服器會設定為唯讀,而資料庫物件的所有數據、架構、使用者角色、許可權和擁有權都會移轉至彈性伺服器。
DNS 交換器 - 資料遷移之後,會執行 DNS 交換器,讓現有的單一伺服器 連接字串 順暢地連線到新的彈性伺服器。 移轉的彈性伺服器支援單一和彈性伺服器 連接字串 格式,以及用戶名稱格式(username@server_name和用戶名稱)。
彈性伺服器可見度 - 成功數據遷移和 DNS 參數之後,新的彈性伺服器會出現在您的訂用帳戶下,並可透過 Azure 入口網站 或 CLI 進行管理。
已更新單一伺服器連接字串 - 舊版單一伺服器的更新 連接字串 會透過 Azure 入口網站 上的服務健康情況通知傳送。 您也可以在 [設定 -> 連接字串] 底下的 [單一伺服器入口網站] 頁面上存取它們。
單一伺服器刪除 - 在刪除單一伺服器之前,會在移轉後保留七天。
提名要自動移轉的單一伺服器
提名程序適用於想要自願快速追蹤移轉至彈性伺服器的使用者。 如果您擁有單一伺服器工作負載,您現在可以自行提名 (如果尚未由服務排程),以進行自動移轉。 透過此 表單 提交您的伺服器詳細資料。
如何檢查您的單一伺服器是否已排程自動移轉
若要判斷是否已選取單一伺服器進行自動移轉,請遵循下列步驟:
- 服務健康情況通知 - 在 Azure 入口網站 中,移至 [服務健康情況>計劃性維護] 事件。 尋找標示為「排程自動移轉至單一伺服器 適用於 PostgreSQL 的 Azure 資料庫 通知」的事件。 通知會在移轉日期前 30、14 和 7 天傳送,並在移轉階段期間再次傳送:進行中、完成和解除委任單一伺服器前六天。
注意
根據預設,這些通知不會登陸到您的收件匣。 若要透過電子郵件或簡訊接收這些警示,您必須遵循這裡的步驟 來設定服務健康情況警示
- 單一伺服器概觀頁面 - 流覽至 Azure 入口網站 中的單一伺服器實例,並檢查 [概觀] 頁面。 如果排程進行自動移轉,您可以在這裡找到詳細數據,包括一次延遲移轉一個月或在目前月份內重新排程的選項。
注意
移轉排程將在排定的移轉時段前 7 天鎖定,在此期間內您將無法重新排程。
- Azure CXP 電子郵件通知 - Azure 客戶經驗(CXP) 也會將直接電子郵件傳送至包含單一伺服器的訂用帳戶相關聯的傳統角色和 RBAC 角色,並提供即將進行的自動移轉資訊。
自動移轉的必要條件檢查
請檢閱下列必要條件,以確保自動移轉成功:
- 在規劃的移轉時段,單一伺服器執行個體應該處於 就緒狀態,以便進行自動移轉。
- 針對已啟用 SSL的單一伺服器執行個體,請確定您擁有信任根存放區中可用的所有憑證 (DigiCertGlobalRootG2 根 CA 和 DigiCertGlobalRootCA 根 CA)。 此外,如果您已將憑證釘選到連接字串,請在排程的自動移轉之前,使用全部三個憑證建立合併的 CA 憑證,以確保移轉後的商務持續性。
- 如果您的來源適用於 postgresql 單一伺服器的 Azure 資料庫具有超過 80 個字元的防火牆規則名稱,請將其重新命名,以確保名稱長度少於 80 個字元。 (彈性伺服器支援的防火牆規則名稱長度為 80 個字元,而在單一伺服器上,允許的長度為 128 個字元。)
目標 postgresql 彈性伺服器如何佈建?
目標彈性伺服器的計算層和 SKU 會根據來源單一伺服器的定價層和 VCores 佈建,如下所示。
單一伺服器定價層 | 單一伺服器虛擬核心 | 彈性伺服器層 | 彈性伺服器 SKU 名稱 |
---|---|---|---|
基本 | 1 | 可高載 | B1ms |
基本 | 2 | 可高載 | B2s |
一般用途 | 2 | GeneralPurpose | Standard_D2s_v3 |
一般用途 | 4 | GeneralPurpose | Standard_D4s_v3 |
一般用途 | 8 | GeneralPurpose | Standard_D8s_v3 |
一般用途 | 16 | GeneralPurpose | 標準 D16s_v3 |
一般用途 | 32 | GeneralPurpose | 標準 D32s_v3 |
一般用途 | 64 | GeneralPurpose | Standard_D64s_v3 |
記憶體最佳化 | 2 | MemoryOptimized | 標準 E2s_v3 |
記憶體最佳化 | 4 | MemoryOptimized | 標準 E4s_v3 |
記憶體最佳化 | 8 | MemoryOptimized | 標準 E8s_v3 |
記憶體最佳化 | 16 | MemoryOptimized | 標準 E16s_v3 |
記憶體最佳化 | 32 | MemoryOptimized | 標準 E32s_v3 |
- 目標彈性伺服器的 postgresql 版本、區域、連接字串、訂用帳戶和資源群組會與來源單一伺服器相同。
- 對於小於 20 GB 記憶體的單一伺服器,記憶體大小會設定為 32 GB,因為這是適用於 postgresql 的 Azure 資料庫 - 彈性伺服器的最小記憶體限制。
- 對於記憶體需求更高的單一伺服器,足夠的記憶體相當於配置單一伺服器所使用記憶體數量的 1.25 倍或多 25%。 在製作初始的基底資料複本期間,系統會在目標上執行多個插入陳述式,而產生 WAL (預寫記錄)。 封存這些 WAL 之前,記錄會取用目標上的記憶體,因此是安全邊界。
- 移轉的彈性伺服器上同時支援兩種使用者格式:username@server_name (單一伺服器) 和使用者名稱 (彈性伺服器)。
- 移轉的彈性伺服器也同時支援兩種連接字串格式:單一伺服器和彈性伺服器格式。
移轉後步驟
以下是您在自動移轉後必須知道的資訊:
- 彈性伺服器中的伺服器參數會調整為社群標準。 如果您想要保留與單一伺服器相同的伺服器參數值,您可以透過 PowerShell 登入並執行 這裡 的指令碼以複製參數值。
- 若要啟用 查詢效能深入解析,您必須在預設未啟用的彈性伺服器上啟用查詢存放區
- 如果需要 高可用性,您可以在零停機的情況下加以啟用。
處理彈性伺服器中的 VNet 規則
在 適用於 PostgreSQL 的 Azure 資料庫 單一伺服器中,虛擬網路 (VNet) 規則是伺服器存取控制清單 (ACL) 中列出的子網。 此規則可讓單一伺服器接受來自該特定子網內節點的通訊。 針對彈性伺服器,不支援 VNet 規則。 相反地,彈性伺服器允許建立 私人端點,讓伺服器能夠在虛擬網路內運作。 私人端點會將私人IP指派給彈性伺服器,而虛擬網路與伺服器之間的所有流量都會透過 Azure 骨幹網路安全地移動,而不需要公開因特網。
移轉之後,您必須針對先前在單一伺服器上 VNet 規則涵蓋的所有子網,將私人端點新增至彈性伺服器。 您可以使用 Azure 入口網站 或 Azure CLI 來完成此程式。 完成此步驟之後,在從單一伺服器移轉之後,您的網路連線將會在彈性伺服器上保持不變。
長期保留備份
在移轉至彈性伺服器之後,自動移轉單一伺服器不會自動設定長期保留 (LTR) 備份。 您可以使用 Azure 備份,備份具有長期保留的彈性伺服器 適用於 PostgreSQL 的 Azure 資料庫。
常見問題集 (FAQ)
問: 為什麼我要被自動移轉?
A. 適用於 Postgresql 的 Azure 資料庫 - 單一伺服器執行個體有資格自動移轉至我們的旗艦供應專案適用於 Postgresql 的 Azure 資料庫 - 彈性伺服器。 此自動移轉可以免除手動移轉伺服器的額外負荷。 您可以利用彈性伺服器的優點,包括價格和效能更理想、對資料庫組態的細微控制,以及自訂維護時段。
問: 自動移轉如何進行? 其移轉的所有功能為何?
A. 彈性伺服器已佈建,以密切匹配與單一伺服器相同的 VCores 和記憶體。 接下來,來源單一伺服器會處於唯讀狀態,結構描述和資料會複製到目標彈性伺服器。 DNS 交換器會執行以將所有現有的連線路由傳送至目標,並將目標彈性伺服器上線。 自動移轉會移轉資料庫(包括結構描述、資料、使用者/角色和權限)。 移轉已離線,您看到的停機時間最多 20 分鐘。
問: 如何設定或檢視自動移轉警示?
A. 以下是您可以設定警示的方式:
問: 如何延遲單一伺服器的排程移轉?
A. 您可以瀏覽至單一伺服器執行個體的 [概觀] 頁面,以檢閱移轉排程。 如果您想要延遲移轉,最多可以延遲一個月,方法是流覽至 Azure 入口網站上單一伺服器執行個體的 [概觀] 頁面。 您可以在一個月內選取另一個移轉時段,以重新排程移轉。 移轉詳細資料將在排定的移轉時段前七天鎖定,之後您將無法重新排程。 此自動移轉可以逐月延遲到 2025 年 3 月 30 日。
問: 如何退出單一伺服器的排程自動移轉?
A. 如果您想要退出自動移轉,您可以為此提出支援票證。
問: 如果我的單一伺服器使用 VNet 規則,應該遵循哪些移轉後步驟?
A. 彈性伺服器上不支援 VNet 規則。 請參閱 本節
問: 我需要在彈性伺服器上重新設定長期保留備份嗎?
A. 是。 請參閱 本節
問: 移轉的彈性伺服器支援哪些使用者名稱和連接字串?
A. 使用者名稱格式 - username@server_name (單一伺服器格式) 和使用者名稱 (彈性伺服器格式) 將受到移轉彈性伺服器的支援,因此您不需要更新它們,才能在移轉後維持應用程式持續性。 此外,移轉的彈性伺服器也支援連接字串格式 (單一和彈性伺服器格式)。
問: 我看到可能從 postgresql 基本單一伺服器移至 postgresql 彈性伺服器的定價差異?
A. 移轉后,少數伺服器可能會看到次要價格修訂,因為這兩個供應專案的最小記憶體限制不同(單一伺服器上的 5 GiB 和彈性伺服器上的 32 GiB)。 彈性伺服器的記憶體成本略高於單一伺服器。 相較於單一伺服器,任何價格上漲都能透過更理想的輸送量和效能予以彌補。 如需彈性伺服器定價的詳細資訊,請參閱 本檔