在適用於 PostgreSQL 的 Azure 資料庫 - Azure 入口網站的單一伺服器中建立及管理讀取複本

適用于:適用於 PostgreSQL 的 Azure 資料庫 - 單一伺服器

在本文中,您將了解如何透過 Azure 入口網站,在「適用於 PostgreSQL 的 Azure 資料庫」中建立與管理讀取複本。 若要深入了解讀取複本,請參閱概觀

必要條件

使用適用於 PostgreSQL 的 Azure 資料庫伺服器作為主要伺服器。

Azure 複寫支援

讀取複本邏輯解碼都相依於 Postgres 預寫記錄檔 (WAL) 來取得相關資訊。 這兩個功能需要來自 Postgres 的不同記錄層級。 邏輯解碼需要比讀取複本更高的記錄層級。

若要設定正確的記錄層級,請使用 Azure 複寫支援參數。 Azure 複寫支援有三個設定選項:

  • 關閉:在 WAL 中放入最少資訊。 大多數適用於 PostgreSQL 的 Azure 資料庫伺服器上都無法使用此設定。
  • 複本:比關閉更詳細。 這是讓讀取複本運作所需的最低記錄層級。 此設定是大多數伺服器上的預設值。
  • 邏輯:比複本更詳細。 這是讓邏輯解碼運作的最低記錄層級。 讀取複本也能在此設定中運作。

注意

部署大量寫入密集主要工作負載的讀取複本時,複寫延遲時間可能會繼續成長,且可能無法跟上主要工作負載。 這也可能會增加主要伺服器的儲存體使用量,因為 WAL 檔案一直到在複本收到才會遭到刪除。

準備主要伺服器

  1. 在 Azure 入口網站中,選取要作為主要伺服器的現有「適用於 PostgreSQL 的 Azure 資料庫」伺服器。

  2. 從伺服器的功能表中,選取[複寫]。 如果 Azure 複寫支援至少設定為 [複本],則您可以建立讀取複本。

  3. 如果 Azure 複寫支援未設定為至少複本,請加以設定。 選取 [儲存]。

    Azure Database for PostgreSQL - Replication - Set replica and save

  4. 選取 [是],重新啟動伺服器以套用變更。

    Azure Database for PostgreSQL - Replication - Confirm restart

  5. 一旦作業完成,您會收到兩個 Azure 入口網站通知。 更新伺服器參數有一個通知。 伺服器重新開機的另一個通知會緊接在後。

    Success notifications

  6. 重新整理 Azure 入口網站頁面以更新 [複寫] 工具列。 您現在可以為此伺服器建立讀取複本。

建立讀取複本

若要建立讀取複本,請遵循下列步驟:

  1. 選取現有適用於 PostgreSQL 的 Azure 資料庫伺服器來作為主要伺服器。

  2. 在伺服器資訊看板的 [設定] 下方,選取 [複寫]。

  3. 選取 [新增複本]。

    Add a replica

  4. 輸入讀取複本的名稱。

    Name the replica

  5. 選取複本的位置。 預設位置與主要伺服器的位置相同。

    Select a location

    注意

    若要深入了解您可以在哪些區域中建立複本,請造訪參閱複本概念文章

  6. 選取 [確定] 來確認建立複本。

建立讀取複本之後,可從 [複寫] 視窗檢視該複本:

View the new replica in the Replication window

重要

請參閱讀取複本概觀的考量章節

更新主要伺服器設定為新的值前,請更新複本設定為相等或更大的值。 此動作協助複本跟隨主複本變更。

停止複寫

您可以停止主要伺服器與讀取複本之間的複寫。

重要

停止主要伺服器和讀取複本的複寫之後,即無法再復原。 讀取複本會變成支援讀取和寫入的獨立伺服器。 獨立伺服器無法再次設定為複本。

若要從 Azure 入口網站停止主要與讀取複本之間的複寫,請遵循下列步驟:

  1. 在 Azure 入口網站中,選取適用於 PostgreSQL 的 Azure 資料庫主要的伺服器。

  2. 在伺服器功能表的 [設定] 下方,選取 [複寫]

  3. 選取要停止複寫的複本伺服器。

    Select the replica

  4. 選取 [停止複寫]。

    Select stop replication

  5. 選取 [確定] 以停止複寫。

    Confirm to stop replication

刪除主伺服器

若要刪除主要伺服器,所用步驟與刪除獨立的「適用於 PostgreSQL 的 Azure 資料庫」相同。

重要

刪除主要伺服器時,所有讀取複本上的複寫都會停止。 讀取複本會變成獨立伺服器,進而支援讀取和寫入。

若要從 Azure 入口網站刪除伺服器,請遵循下列步驟:

  1. 在 Azure 入口網站中,選取適用於 PostgreSQL 的 Azure 資料庫主要的伺服器。

  2. 開啟該伺服器的概觀頁面。 選取 [刪除]。

    On the server Overview page, select to delete the primary server

  3. 輸入要刪除的主要伺服器名稱。 選取 [刪除],並確認刪除主要伺服器。

    Confirm to delete the primary server

刪除複本伺服器

刪除讀取複本的方式類似於刪除主要伺服器。

  • 在 Azure 入口網站中,開啟讀取複本的 [概觀] 頁面。 選取 [刪除]。

    On the replica Overview page, select to delete the replica

您也可以透過下列步驟,從 [複寫] 視窗中刪除讀取複本:

  1. 在 Azure 入口網站中,選取適用於 PostgreSQL 的 Azure 資料庫主要的伺服器。

  2. 在伺服器功能表的 [設定] 下方,選取 [複寫]

  3. 選取要刪除的讀取複本。

    Select the replica to delete

  4. 選取 [刪除複本]。

    Select delete replica

  5. 輸入要刪除的複本名稱。 選取 [刪除] 以確認刪除複本。

    Confirm to delete te replica

監視複本

有兩個計量可用來監視讀取複本。

「複本之間的最大延隔時間」計量

[複本之間的最大延隔時間] 計量會顯示主要伺服器和最大延隔複本之間的延隔 (位元組)。

  1. 在 Azure 入口網站中,選取適用於 PostgreSQL 的 Azure 資料庫主要的伺服器。

  2. 選取 [計量]。 在 [計量] 視窗中,選取 [複本之間的最大延隔時間]

    Monitor the max lag across replicas

  3. 選取 [最大值] 作為 [彙總]

「複本延隔時間」計量

複本延隔時間計量顯示在自最後一次重新執行複本上交易的時間。 如果主要伺服器上沒有發生交易,計量會反映此時間延隔。

  1. 在 Azure 入口網站中,選取「適用於 PostgreSQL 的 Azure 資料庫」讀取複本。

  2. 選取 [計量]。 在 [計量] 視窗中,選取 [複本延隔時間]

    Monitor the replica lag

  3. 選取 [最大值] 作為 [彙總]

後續步驟