使用「適用於 MySQL 的 Azure 資料庫 - 單一伺服器」的商務持續性概觀
適用於: 適用於 MySQL 的 Azure 資料庫 - 單一伺服器
重要
適用於 MySQL 的 Azure 資料庫單一伺服器位於淘汰路徑上。 強烈建議您升級至適用於 MySQL 的 Azure 資料庫彈性伺服器。 如需移轉至適用於 MySQL 的 Azure 資料庫彈性伺服器的詳細資訊,請參閱適用於 MySQL 的 Azure 資料庫單一伺服器會發生什麼事?
本文描述適用於 MySQL 的 Azure 資料庫針對商務持續性和災害復原所提供的功能。 了解有哪些選項可讓您從可能導致資料遺失或造成資料庫和應用程式無法使用的干擾性事件中復原。 了解當使用者或應用程式錯誤影響資料完整性、Azure 區域中斷,或您的應用程式需要維護時該如何處理。
可用來提供商務持續性的功能
當您開發商務持續性計劃時,您必須了解應用程式在干擾性事件之後完全復原所需的最大可接受時間 - 這是您的復原時間目標 (RTO)。 您也必須了解在干擾性事件之後,應用程式在復原時可容許遺失的最近資料更新 (時間間隔) 最大數量 - 這是您的復原點目標 (RPO)。
適用於 MySQL 的 Azure 資料庫單一伺服器會提供商務持續性和災害復原功能,包括能夠起始異地還原的異地備援備份,以及在不同的區域部署讀取複本。 每項功能都有復原時間和潛在資料遺失的不同特性。 搭配異地還原功能,使用從另一個區域複寫的備份資料來建立新的伺服器。 還原和復原所需的整體時間,取決於資料庫的大小以及要復原的記錄量。 建立伺服器的整體時間從幾分鐘到數小時不等。 透過讀取複本,來自主要資料庫的交易記錄會以非同步方式串流至複本。 如果主要資料庫由於區域層級錯誤而中斷,容錯移轉至複本會提供較短的 RTO 並減少資料遺失。
注意
主要資料庫與複本之間的延遲取決於網站之間的延遲、要傳輸的資料量,以及最重要的是取決於主要伺服器的寫入工作負載。 大量寫入工作負載可能會產生顯著的延遲。
由於複寫用於讀取複本的非同步本質,因此不應將其視為高可用性 (HA) 解決方案,因為較高的延隔時間可能表示較高的 RTO 和 RPO。 僅在工作負載於尖峰和非尖峰時維持較小延遲的情況下,讀取複本才能作為 HA 替代方案。 否則,讀取複本適用於真正大規模的讀取工作負載和 (災害復原) DR 案例。
下表比較一般工作負載案例中的 RTO 和 RPO:
功能 | 基本 | 一般用途 | 記憶體最佳化 |
---|---|---|---|
從備份進行時間點還原 | 保留期間內的任何還原點 RTO - 不定 RPO < 15 分鐘 |
保留期間內的任何還原點 RTO - 不定 RPO < 15 分鐘 |
保留期間內的任何還原點 RTO - 不定 RPO < 15 分鐘 |
從異地複寫備份進行異地還原 | 不支援 | RTO - 不定 RPO < 1 小時 |
RTO - 不定 RPO < 1 小時 |
讀取複本 | RTO - 數分鐘* RPO < 5 分鐘* |
RTO - 數分鐘* RPO < 5 分鐘* |
RTO - 數分鐘* RPO < 5 分鐘* |
* 在某些情況下,RTO 和 RPO 可能更高,取決於網站之間的延遲、要傳輸的資料量,以及最重要的是主要資料庫寫入工作負載。
在使用者或應用程式錯誤之後復原伺服器
您可以使用服務的備份,在各種干擾性事件發生之後復原伺服器。 使用者可能會不小心刪除某些資料、不小心卸除重要的資料表,或甚至是卸除整個資料庫。 應用程式可能會因為應用程式缺陷或其他原因,而不慎以不正確的資料覆寫正確的資料。
您可以執行時間點還原,為伺服器建立已知良好時間點的複本。 此時間點必須在您為伺服器設定的備份保留期間內。 資料還原至新的伺服器之後,您可以將原始伺服器取代為還原的新伺服器,或從還原的伺服器將所需的資料複製到原始伺服器。
重要
刪除的伺服器只能在備份刪除後的五天內還原。 您只能從裝載伺服器的 Azure 訂用帳戶存取和還原資料庫備份。 若要還原已卸除的伺服器,請參閱記載的步驟。 若要在部署後避免伺服器資源遭到意外刪除或非預期的變更,系統管理員可以利用管理鎖定。
在 Azure 區域資料中心中斷後進行還原
雖然很罕見,但 Azure 資料中心也可能會有中斷的時候。 發生中斷時,可能只會讓營運中斷幾分鐘,但也可能會持續幾小時。
其中一個選項,是在資料中心中斷結束後等待區域資料中心中斷重新上線。 這適用於可承受伺服器離線一段時間的應用程式,例如在開發環境中。 當資料中心中斷時,您不會知道中斷會持續多久,因此這個選項僅適用於您可以一段時間不需要伺服器的情況。
異地復原
異地還原功能會使用異地備援備份來還原伺服器。 備份裝載於您伺服器的配對區域中。 即使您的伺服器裝載所在的區域處於離線狀態,這些備份仍可供存取。 您可以從這些備份還原至任何其他區域,並讓您的伺服器恢復上線。 從備份和還原概念一文中深入了解異地還原。
重要
只有使用異地備援備份儲存體來佈建伺服器時,才可進行異地還原。 如果您希望將現有伺服器從本機備援切換到異地備援備份,您必須先透過現有伺服器的 mysqldump 進行傾印後,再將其還原至已設定為異地備援備份的新建伺服器。
跨區域讀取複本
您可以使用跨區域讀取複本來增強商務持續性和災害復原規劃。 讀取複本會使用 MySQL 的二進位記錄複寫技術進行非同步更新。 從讀取複本概念一文中深入了解讀取複本、可用區域,以及如何容錯移轉。
常見問題集
適用於 MySQL 的 Azure 資料庫將客戶資料儲存在何處?
依預設,適用於 MySQL 的 Azure 資料庫不會將客戶資料移動或儲存到其部署所在的區域外。 不過,客戶可以選擇性地啟用異地備援備份,或建立跨區域讀取複本,將資料儲存在另一個區域中。
下一步
- 深入了解適用於 MySQL 的 Azure 資料庫中的自動備份。
- 了解如何使用 Azure 入口網站或 Azure CLI 來進行還原。
- 了解適用於 MySQL 的 Azure 資料庫中的讀取複本。