共用方式為


在適用於 PostgreSQL 的 Azure 資料庫 - 單一伺服器中備份與還原

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

重要

適用於 PostgreSQL 的 Azure 資料庫 - 單一伺服器即將淘汰。 強烈建議您升級至適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器。 如需移轉至適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器的詳細資訊,請參閱適用於 PostgreSQL 的 Azure 資料庫單一伺服器會發生什麼情況? (部分機器翻譯)。

適用於 PostgreSQL 的 Azure 資料庫會自動建立伺服器備份,並將其儲存在使用者設定的本地備援或異地備援儲存體中。 備份可以用來將伺服器還原至某個時間點。 備份和還原可保護資料免於意外損毀或刪除,是商務持續性策略中不可或缺的一部分。

備份

適用於 PostgreSQL 的 Azure 資料庫會建立資料檔案和交易記錄的備份。 根據支援的儲存體大小上限,我們會採用完整和差異備份 (4 TB 上限的儲存體伺服器) 或快照集備份 (最多 16 TB 上限的儲存體伺服器)。 在您設定的備份保留期限內,這些備份可讓您將伺服器還原至任何時間點。 預設的備份保留期限是七天。 可選擇設定的期限最多為 35 天。 所有備份皆會使用 AES 256 位元加密進行加密。

無法匯出這些備份檔案。 在適用於 PostgreSQL 的 Azure 資料庫中,備份只能用於還原作業。 您可以使用 pg_dump 來複製資料庫。

備份頻率

具有最多 4 TB 儲存體的伺服器

會每週對支援最多 4 TB 上限儲存體的伺服器執行一次完整備份。 每天執行兩次差異備份。 交易記錄備份會每五分鐘執行一次。

最多 16 TB 儲存體的伺服器

Azure 區域子集中,所有新佈建的伺服器最多可以支援 16 TB 儲存體。 這些大型儲存體伺服器上的備份以快照集為基礎。 建立伺服器之後,會立即排程第一次完整快照集備份。 第一個完整快照集備份保留為伺服器的基底備份。 後續的快照集備份只是差異備份。 差異快照集備份不會依固定排程執行。 會在一天內執行多個差異快照集備份,但只會保留 3 個備份。 交易記錄備份會每五分鐘執行一次。

注意

針對使用最多 4TB 儲存體設定所設定的複本伺服器,會執行自動備份。

備份保留

備份會根據伺服器上的備份保留期間設定加以保留。 您可以選取 7 到 35 天的保留期間。 預設保留期間為 7 天。 您可以在建立伺服器期間設定保留期間,或稍後使用 Azure 入口網站Azure CLI 更新備份設定,以設定保留期間。

備份保留期限會控制可往回多少時間來擷取時間點還原,因為這會以可用的備份為基礎。 從還原的觀點來看,備份保留期間也可視為復原時段。 在備份保留期間內執行時間點還原所需的全部備份,都保留在備份儲存體中。 例如,如果備份保留期間設定為 7 天,則復原時段應該是過去 7 天。 在此案例中,系統會保留過去 7 天內還原伺服器所需的所有備份。 如果備份保留時段為七天:

  • 最多 4 TB 儲存體的伺服器保留最多 2 個完整資料庫備份、所有差異備份,以及自最早完整資料庫備份以來執行的交易記錄備份。
  • 最多 16 TB 儲存體的伺服器保留過去 8 天內的完整資料庫快照集、所有差異快照集和交易記錄備份。

備份備援選項

適用於 PostgreSQL 的 Azure 資料庫可讓您在一般用途和記憶體最佳化層中,彈性地選擇本地備援或異地備援備份儲存體。 在異地備援備份儲存體儲存備份檔案時,會將額外的備份副本複寫到配對區域。 如此一來,您就能獲得更好的保護和功能,若不幸發生區域災害,您還可以還原伺服器。 「基本」層只會提供本地備援的備份儲存體。

重要

您只可在伺服器建立期間,為備份設定本地備援或異地備援儲存體。 伺服器佈建完成之後,您無法變更備份儲存體備援選項。

備份儲存體成本

適用於 PostgreSQL 的 Azure 資料庫可提供高達 100% 的已佈建伺服器儲存體來作為備份儲存體,且不需要再支付額外的費用。 額外使用的任何備份儲存體以每月 GB 數計費。 舉例來說,如果您佈建的伺服器具有 250 GB 儲存體,您就會有 250 GB 的免費額外儲存體,您可將其作為伺服器備份使用。 備份耗用超過 250 GB 的儲存體依定價模式收費。

在 Azure 入口網站提供的 Azure 監視器中,您可以使用已使用的備份儲存體計量來監視伺服器耗用的備份儲存體。 「已使用的備份儲存體」計量代表根據伺服器設定的備份保留期間,而保留的所有完整資料庫備份、差異備份和記錄備份所耗用的儲存體總和。 先前已說明備份的頻率由服務管理。 不論資料庫大小總計,伺服器上頻繁的交易活動可能會導致備份儲存體使用量增加。 針對異地備援儲存體,備份儲存體使用量是本地備援儲存體的兩倍。

控制備份儲存體成本的主要方式是設定適當的備份保留期間,然後選擇正確的備份備援選項以符合您所需的復原目標。 您可以從 7 到 35 天的範圍選取保留期間。 一般用途和記憶體最佳化伺服器可以選擇異地備援儲存體供備份使用。

還原

在適用於 PostgreSQL 的 Azure 資料庫中,還原執行作業會從原始伺服器的備份中建立新的伺服器。

有兩種類型的還原可使用:

  • 時間點還原可搭配任一備份備援選項使用,並在您原始伺服器所在區域中建立新的伺服器。
  • 異地還原只能您將伺服器設定為使用異地備援儲存體時使用,這可讓您將伺服器還原至不同的區域。

預估的復原時間取決於數個因素,包括資料庫大小、交易記錄大小、網路頻寬,以及在相同區域中同時進行復原的資料庫總數。 根據上次資料備份和需要執行的復原數量,復原時間有所不同。 通常不到 12 小時。

注意

如果您的來源 PostgreSQL 伺服器使用客戶自控金鑰來加密,請參閱此文件以取得其他考量。

注意

如果要還原已刪除的 PostgreSQL 伺服器,請遵循此處所述的程序。

還原時間點

與備份備援選項無關,您可以在備份保留期限內地任何時間點執行還原。 新伺服器會建立在與原始伺服器相同的 Azure 區域中。 其使用原始伺服器的組態來建立,包含定價層、計算世代、虛擬核心數目、儲存體大小、備份保留期限,以及備份備援選項。

時間點還原適用於多種案例。 例如,使用者不小心刪除資料、卸除重要的資料表或資料庫,或是因為應用程式缺失,使應用程式不小心用不正確的資料覆寫正確資料。

您可能需要等候下一個交易記錄備份執行時,才能還原至前五分鐘內的時間點。

如果要還原已卸除的資料表,

  1. 使用時間點方法還原來源伺服器。
  2. 使用 pg_dump 從還原的伺服器傾印資料表。
  3. 重新命名原始伺服器上的來源資料表。
  4. 在原始伺服器上使用 psql 命令列匯入資料表。
  5. 您可以選擇刪除還原的伺服器。

注意

建議不要為同一部伺服器同時建立多個還原。

異地復原

如果您已將伺服器設定為使用異地備援備份,您可以將伺服器還原到另一個可使用服務的 Azure 區域中。 最多支援 4 TB 儲存體的伺服器可以還原至異地配對區域,或還原至最多支援 16 TB 儲存體的任何區域。 如果伺服器最多支援 16 TB 的儲存體,也可以在支援 16 TB 伺服器的任何區域中還原異地備份。 如需支援的區域清單,請檢閱適用於 PostgreSQL 的 Azure 資料庫定價層

當您的伺服器因為裝載伺服器區域中的事件而無法使用時,異地還原就是預設的復原選項。 如果區域中的大規模意外導致您無法使用資料庫應用程式,則您可以從異地備援備份,將伺服器還原到任何其他區域中的伺服器。 在建立備份及將它複寫至不同區域之間會有延遲。 此延遲可能最長達一小時,因此當發生災害時,最多可能會遺失最長達一小時的資料。

在異地還原期間,可以進行變更的伺服器設定包括計算世代、vCore、備份保留期間及備份備援選項。 不支援變更定價層 (基本、一般用途或記憶體最佳化) 或儲存體大小。

注意

如果來源伺服器使用基礎結構雙重加密,則還原伺服器時有所限制,包括可用的區域。 如需更多詳細資料,請參閱基礎結構雙重加密

執行還原之後的工作

從其中任何一種復原機制還原之後,您應執行下列工作,讓您的使用者和應用程式回復正常執行狀態︰

  • 若要存取還原的伺服器,由於其名稱與原始伺服器不同,請在連接字串中將 servername 變更為還原的伺服器名稱,並將使用者名稱變更為 username@new-restored-server-name

  • 如果新伺服器用來取代原始伺服器,則系統會將用戶端和用戶端應用程式重新導向至新伺服器。

  • 確定有適當的伺服器層級防火牆和 VNet 規則供使用者連線。 不會從原始伺服器複製這些規則。

  • 確定有適當的登入和資料庫層級權限

  • 依適當情況設定警示

  • 長期保留

    適用於 PostgreSQL 的 Azure 備份和 Azure 資料庫伺服器服務已針對適用於 PostgreSQL 的 Azure 資料庫單一伺服器執行個體建置企業級的長期備份解決方案,可保留最多 10 年的備份。 除了適用於 PostgreSQL 的 Azure 資料庫單一伺服器所提供的自動備份解決方案之外,您還可以獨立使用長期保留,該伺服器最多可保留 35 天。 自動備份是適用於作業復原的實體備份,當您想要從最新的備份還原時,尤其適用。 長期備份可協助您符合合規性需求、更細微,並使用原生 pg_dump 作為邏輯備份。 除了長期保留之外,此解決方案還提供下列功能:

在個別資料庫層級進行客戶控制的排程和隨需備份。 集中監視所有作業和工作。 儲存在個別安全性和容錯網域中的備份。 如果來源伺服器或訂用帳戶遭入侵,備份保存庫中的備份仍安全無虞 (在 Azure 備份受控儲存體帳戶中)。 使用 pg_dump 可讓您在不同資料庫版本還原資料時有更大的彈性。 Azure 備份保存庫支援不變性和虛刪除 (預覽版) 功能,以保護資料。

  • 如需執行長期備份的詳細資訊,請瀏覽操作指南
  • 長期保留已知問題。

下一步