共用方式為


Azure SQL 資料庫的業務連續性概觀

適用於:Azure SQL 資料庫Fabric 中的 SQL 資料庫

本文概述 Azure SQL 資料庫的商務持續性和災害復原功能,說明從可能造成資料遺失或導致資料庫和應用程式無法使用的中斷事件中復原的選項和建議。 了解當使用者或應用程式錯誤影響資料完整性、Azure 可用性區域或區域中斷,或您的應用程式需要維護時,該如何處理。

概觀

Azure SQL 資料庫中的商務持續性指透過提供可用性、高可用性和災害復原,讓您的企業在中斷時繼續運作的機制、原則和程序。

大部分情況下,SQL Database 會處理雲端環境中可能發生的中斷事件,並保持您應用程式和商務程序正常運行。 不過,有些中斷事件可能需要一些時間才能緩解,例如:

  • 使用者不小心刪除或更新了資料表中的資料列。
  • 惡意攻擊者成功刪除資料或刪除資料庫。
  • 災難性自然災害會摧毀資料中心或可用區域或地區。
  • 因設定變更、軟體錯誤或硬體失敗而造成罕見的數據中心、可用性區域或全區域中斷。

如需最大化可用性並達到更高商務持續性的規範性建議,請參閱:

高可用性

Azure SQL 資料庫隨附核心復原和可靠性承諾,可防止軟體或硬體故障。 資料庫備份是自動執行的,可保護您的資料免於損毀或意外刪除。 作為平台即服務 (PaaS),Azure SQL 資料庫服務以現成功能的形式提供可用性,其可用性 SLA 高達 99.99%,為行業領先水平。

若要在 Azure 雲端環境中達到高可用性,請啟用 區域備援。 在使用區域備援時,資料庫或彈性集區會使用 Azure 可用性區域 來確保應對區域性失敗的韌性。

  • 許多 Azure 區域提供可用性區域,這些區域是區域內獨立的資料中心群組,具有獨立的電源、冷卻和網路基礎結構。
  • 如果一個區域發生中斷,可用性區域的作用是在其餘區域中提供區域服務、容量和高可用性。

啟用區域備援之後,資料庫或彈性集區能夠從區域性硬體和軟體故障中復原,且復原對應用程式而言是透明的。 啟用高可用性時,Azure SQL 資料庫服務可以提供 99.995% 的更高可用性 SLA。

災害復原

若要跨區域達到更高的可用性和備援,您可以啟用災害復原功能,以從災難性的區域故障中快速復原資料庫。 Azure SQL 資料庫的災害復原選項包括:

  • 主動地理複寫功能可讓您在任何地區為主要資料庫建立持續同步的可讀取次要資料庫。
  • 除了提供主要資料庫與次級資料庫之間的持續同步處理外,容錯移轉群組還允許您管理邏輯伺服器上某些或所有資料庫的複寫和容錯移轉,將其轉移至另一個區域中的次要邏輯伺服器。 容錯移轉群組提供保持不變的讀寫和唯讀端點,因此無需在容錯移轉後更新應用程式連接字串。
  • 當您無法存取主要區域中的資料庫時,異地還原允許您透過從異地複寫備份還原,並在任何 Azure 區域的現有伺服器上建立新資料庫,以從區域中斷中復原。

下表比較主動式異地複寫與故障轉移群組,這是 Azure SQL 資料庫的兩個災難復原選項:

啟用異地複寫 容錯移轉群組
主要與次要之間的連續資料同步 Yes Yes
同時倒換多個資料庫 Yes
容錯移轉之後連接字串保持不變 Yes
支援讀取縮放 Yes Yes
多個複本 Yes
可以位於與主要相同的區域 Yes

RTO 和 RPO

當您開發商務持續性計畫時,請了解應用程式在干擾性事件之後完全復原所需的最大可接受時間。 量化災害復原相關商務需求的兩個常見方式如下:

  • 復原時間目標 (RTO):應用程式在非計劃性干擾事件之後完全復原所需的時間。
  • 恢復點目標 (RPO):可以從非計劃性干擾事件容許的數據遺失時間量。

下表比較每個商務持續性選項的 RPO 和 RTO:

商務持續性選項 RTO (停機時間) RPO (資料遺失)
高可用性
(使用區域備援)
通常短於 30 秒 0
災害復原
(使用故障轉移群組搭配 客戶管理的故障轉移原則 或主動式異地複寫)
通常短於 60 秒 等於或大於 0
(取決於尚未復現的中斷事件發生之前的資料更改)
災害復原
(使用地理還原)
通常需要幾分鐘或幾小時,具體取決於 Azure 儲存體複寫。 通常分鐘或小時,取決於資料庫備份的大小

提供商務持續性的功能

從資料庫的角度出發,有四個主要的可能中斷案例: 下表列出 SQL Database 商務持續性功能,可用來緩解潛在的商務中斷案例:

商務中斷案例 商務持續性功能
影響資料庫節點的本機硬體或軟體故障。 為了減輕本機硬體和軟體失敗,Azure SQL Database 包含 可用性架構,可保證從這些失敗自動復原,最多可達 99.99% 可用性 SLA。
通常由應用程式 Bug 或人為錯誤所造成的資料損毀或刪除。 這類失敗是應用程式特有的,且資料庫服務通常偵測不到。 為了保護您的企業免於遺失資料,SQL Database 每週會自動建立完整資料庫備份、通常每 12 或 24 小時就會進行差異資料庫備份,而且每 5 至 10 分鐘就會進行交易記錄備份。 根據預設,備份會儲存在異地備援儲存體中,供所有服務層級使用七天。 除了「基本」以外的所有服務層級均支援可設定的備份保留期間,以進行時點還原 (PITR),最長可達 35 天。 如果伺服器尚未刪除,或者您已設定長期保留 (LTR),則可以將已刪除的資料庫還原至刪除時的狀態。
罕見的數據中心或可用性區域中斷,可能是由自然災害事件、設定變更、軟體錯誤或硬體失敗所造成。 若要減輕資料中心或可用性區域層級中斷,請為資料庫或彈性集區啟用區域備援,以使用 Azure 可用性區域,並在 Azure 區域內的多個實體區域提供備援。 啟用區域備援可確保資料庫或彈性集區能夠抵禦區域性故障,提供高達 99.995% 的高可用性 SLA。
影響所有可用性區域及其組成數據中心的罕見 區域中斷 ,可能是由災難性的自然災害事件所造成。 若要緩解整個區域的中斷,請使用下列選項之一啟用災害復原:
- 持續的資料同步處理選項,例如容錯移轉群組 (建議)作用中異地複寫,可讓您在次要區域中建立複本以進行容錯移轉。
- 將備份儲存體設置為異地備援來使用異地還原

為區域中斷做準備

無論您使用哪一項商務持續性功能,都必須在另一個區域中準備次要資料庫。 如果您沒有適當地準備,在故障轉移或復原後使應用程式聯網將會多花費時間,而且可能還需要進行疑難排解,這可能會延遲 RTO。 請遵循為區域中斷做準備的檢查清單

還原同一 Azure 區域內的資料庫

您可以使用自動資料庫備份,將資料庫還原至過去的時間點。 如此一來,您就能從人為錯誤所造成的資料損毀中復原。 時間點還原 (PITR) 可讓您在同一部伺服器上建立新的資料庫,代表損毀事件之前的數據狀態。 如需復原時間,請參閱 RTO 和 RPO

如果應用程式的即時還原功能所支援的最大備份保留期限不夠,您可以透過設定長期保留政策(LTR)來延長它。 如需詳細資訊,請參閱長期保存

在最少停機時間的情況下升級應用程式

有時,應用程式會因為維護 (例如應用程式升級) 而必須離線。 您可以使用 SQL Database 主動式異地複寫來管理雲端應用程式的滾動升級。 如果發生問題,異地復寫也可以提供復原路徑。

使用待命複本以節省成本

如果您的次要複本用於災害復原 (DR),而且沒有任何讀取或寫入工作負載,您可以在設定新的活動的異地複寫關係時,將資料庫指定為待命,從而節省授權成本。

更多相關資訊,請檢閱無授權待命複本

後續步驟