本文提供逐步指示,教您建立適用於 PostgreSQL 的 Azure 資料庫彈性伺服器的讀取複本。
備註
當你部署讀取副本來處理持續且寫入密集的工作負載時,複製延遲可能會持續增加,甚至可能永遠追不上讀取副本的來源伺服器。 這也可能增加來源伺服器的儲存空間使用量,因為 WAL 檔案只有在所有由同一來源伺服器輸入的讀取副本收到後才會被刪除。
這很重要
參閱使用讀取複本時的 考量事項。
在您提高來源伺服器上以下參數的值之前,請先在其讀取複本上提高這些值:max_connections、max_prepared_transactions、max_locks_per_transaction、max_wal_senders、max_worker_processes。 在您在讀取複本上將其減少之前,請先在其來源將其減少。
嘗試以錯誤順序更改這些參數,會彈出錯誤代碼 ReadReplicaServerParameterLessThanSourceServer,並出現以下訊息: Replica server parameter should be greater than or equal to source server parameter. Parameter <parameter_name> value '<parameter_value>' setting on source server <source_server> should be less than its replica server <replica_server> value '<parameter_value_on_replica>'.
在為您的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器設定讀取副本之前,請確保其來源伺服器已設定為符合必要的前置條件。 來源伺服器的特定設定會影響建立副本的能力。
儲存自動成長:你有責任確保來源伺服器及其已讀副本的儲存自動成長設定符合 Storage autogrow with read replicas 所提供的具體指引。 這些規則確保一致性並防止複製中斷。
建立讀取複本的步驟
使用 Azure 入口網站:
選擇你想用作複本來源伺服器的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器。
在資源功能表中的 [ 設定] 區段下,選取 [ 複寫]。
在 複製品 區塊中,選擇 建立複製品。
你會被導向「將讀取副本加入 適用於 PostgreSQL 的 Azure 資料庫」的精靈,在那裡你可以設定新的讀副本的設定。
使用下表來瞭解 [基本 ] 頁面中可用之不同字段的意義,並做為填滿頁面的指引。
區段 Setting 建議的值 Description 伺服器建立後可以更改 項目詳細數據 Subscription 您想要用來建立資源的訂閱名稱。 訂閱是指與 Microsoft 簽訂的協議,允許使用 Microsoft 的雲端平台或服務。 收費依據每位用戶的授權費或雲端資源消耗計算。 現有適用於 PostgreSQL 的 Azure 資料庫彈性伺服器可以移至與原本建立時不同的訂用帳戶。 如需詳細資訊,請參閱將 Azure 資源移至 新的資源群組或訂用帳戶。 資源群組 所選取訂用帳戶中的資源群組,您要在其中建立資源。 它可以是現有的資源群組,或者你也可以選擇 「建立新」,並在該訂閱中提供一個在現有資源群組名稱中獨一無二的名稱。 「資源群組」是存放 Azure 解決方案相關資源的容器。 資源群組可以包含解決方案的所有資源,或只包含您想要以群組方式管理的資源。 您可根據對組織最有利的方式,決定如何將資源配置到資源群組。 一般而言,將共用相同生命週期的資源新增至相同的資源群組,以便您輕鬆地以群組的形式部署、更新和刪除資源。 你可以將現有的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器移到與你原本建立的訂閱不同的平台。 如需詳細資訊,請參閱將 Azure 資源移至 新的資源群組或訂用帳戶。 伺服器詳細數據 原始碼伺服器名稱 你想建立讀取副本的來源伺服器名稱。 一個唯一名稱,用來識別你的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器。 網域名稱 postgres.database.azure.com會附加在你提供的伺服器名稱後面,以符合完整限定的主機名稱,讓你能利用網域命名系統伺服器來解析伺服器的 IP 位址。伺服器名稱 您想要指派給新讀取複本的名稱。 一個唯一名稱,用來識別你的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器。 網域名稱 postgres.database.azure.com會附加在你提供的伺服器名稱後面,以符合完整限定的主機名稱,讓你能利用網域命名系統伺服器來解析伺服器的 IP 位址。雖然建立伺服器後無法更改伺服器名稱,但你可以利用 Point in Time 恢復 功能,將伺服器恢復成不同名稱。 另一種可在繼續使用現有伺服器的同時,仍能以不同的伺服器名稱來參照它的方法,是使用 虛擬端點 建立一個使用所需新名稱的寫入端點。 透過這種方法,您可以用伺服器的原始名稱,或是寫入虛擬端點所指派的名稱來參考伺服器。 地點 支援此服務的其中一個區域名稱。 時間點還原只支援在來源伺服器所在的相同區域中部署新伺服器。 合規性、數據落地、定價、與您的用戶鄰近,或相同區域中其他服務的可用性,是您在選擇區域時應該使用的一些需求。 該服務沒有提供自動且透明地將伺服器遷移到不同區域的功能。 計算 + 儲存體 在備份還原時分配與來源伺服器相同類型和大小的運算資源及儲存空間。 不過,如果您選取 [ 設定伺服器 ] 連結,您可以變更配置給新伺服器的記憶體類型,以及是否應該使用異地備援備份來布建。 部署新伺服器之後,其計算選項可以相應增加或減少。 可用性區域 您慣用的可用性區域。 您可以選擇要部署伺服器的可用性區域。 能夠選擇伺服器部署的可用性區域,有助於將其與應用程式共置。 如果你選擇 無偏好,伺服器建立時會自動分配一個預設可用區域。 雖然伺服器建立後無法更改可用性區,但你可以利用 點點恢復 功能,以不同名稱在不同可用性區還原伺服器。 驗證 這些設定僅供參考。 讀取副本所使用的所有與認證相關的設定,皆繼承自其來源伺服器。 可以在主要伺服器上變更,並可複寫到下游的讀取複本。 如果您想更改自動分配給新伺服器的運算層級、處理器或大小,或是想更改讀取副本的部分儲存設定,請選擇 「配置伺服器」。
會打開 Compute + 儲存 頁面,顯示新伺服器的運算與儲存選項。
使用下表來了解 計算 + 儲存器 頁面中可用之不同欄位的意義,並做為填滿頁面的指引。
區段 Setting 建議的值 Description 可於讀取複本建立後變更 計算 計算層 預設情況下,它會自動設定到與來源伺服器相同的等級。 不過,您可以將它設定為支援讀取複本的任何其他計算層。 可能的值為 一般用途 (通常用於具有最常見工作負載的生產環境),以及 記憶體優化 (通常用於執行需要高記憶體與 CPU 比率之工作負載的生產環境)。 如需詳細資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫中的計算選項。 可在建立讀取複本後變更。 然而,如果你使用的功能只支援特定等級,並將目前等級改為不支援該功能,該功能就會停止使用或停用。 計算處理器 在多個處理器類型可用區域,你可以選擇兩個可用值(AMD 或 Intel),以從 計算大小 組合框中顯示的值篩選出符合所選處理器類型的值。 可於讀取複本建立後變更。 計算大小 預設情況下,它會自動設定為與來源伺服器相同的運算大小。 不過,只要它的 vCore 數量和來源伺服器相同或更多,你可以設定成任何其他運算大小。 支援的值清單可能會因區域而異,視每個區域上可用的硬體而定。 如需詳細資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫中的計算選項。 可於讀取複本建立後變更。 儲存空間 儲存體類型 保持 為高級 SSD。 不支援將儲存類型設定為與來源伺服器不同的值。 精靈會自動將此屬性設定為與來源伺服器所分配的儲存類型相符。 建立讀取複本後無法進行更改。 儲存空間大小 預設值與來源伺服器的儲存大小相同。 不過,你可以設定任何更高的數值。 可在建立讀取副本伺服器後更改。 您只能增加它。 不支援手動或自動壓縮記憶體。 效能層級 預設情況下,它會自動設定成與來源伺服器相同的值。 不過,你可以把它改成不同的數值。 當您建立磁碟時,會以效能層級的形式設定進階固態硬碟的效能。 在設定磁碟的佈建大小時,系統會自動選取效能層級。 此效能層級會決定受控磁碟的 IOPS 和輸送量。 對於高級 SSD 硬碟,你可以在部署時或之後更改這個等級,且不會改變磁碟大小,也不會有停機時間。 更改等級可讓您準備並滿足更高的需求,而不需使用磁碟的突發功能。 視所需額外效能持續的時間而定,與其依賴效能高載,不如調整效能層級,通常會更具成本效益。 這種變化非常適合暫時需要持續較高表現水準的賽事。 假日購物、效能測試或執行訓練環境等事件。 若要處理這些事件,只要您需要額外的效能,您就可以將磁碟切換至較高的效能層級,而不需要停機。 然後,當不再需要額外的效能時,您就可以返回原始層,而不需要停機。 建立伺服器之後可以變更。 IOPS(操作/秒) 不適用於擁有高級 SSD 儲存類型的伺服器。 建立伺服器之後可以變更。 吞吐量(MB/秒) 不適用於擁有高級 SSD 儲存類型的伺服器。 建立伺服器之後可以變更。 如果您需要變更任何允許與來源伺服器不同的設定,請前往 網路、安全性 或 標籤 分頁。 當新的副本依照你的需求設定好後,選擇 檢視 + 建立。
檢查新部署的所有設定是否正確,然後選擇 建立。
系統會啟動新的部署,以建立您的適用於 PostgreSQL 的 Azure 資料庫彈性伺服器,並將其設為來源伺服器的讀取複本。
當部署完成後,選取 前往資源 以開始使用新的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器。
你會來到複本伺服器的 概覽 頁面。
在資源功能表中的 [ 設定] 區段下,選取 [ 複寫]。 在 副本中,找到符合複製集的伺服器清單,以及每個伺服器所扮演的角色。
如果你的複製集支援 Cascade 副本,你可以選擇任一中間或第一層的讀取副本,並從中建立一個讀取副本。 對於具有級聯複本的複寫集,複寫集拓撲會顯示具有額外巢狀層級的樹狀結構。