建置復原性資料服務
貴組織有多個工作負載分散到各個環境。 所有工作負載都依賴保持安全且及時的資料。 您可以採取不同的措施來為您的資料建置復原功能。
在本單元中,您將了解 Always On 可用性群組如何協助複寫您的資料。 您將了解 Azure SQL Database 中的自動化備份和自動容錯移轉如何協助保護資料的安全。 您也將了解如何使用 Azure Cosmos DB 的異地複寫功能,以透明方式將資料複寫到其他區域,並使資料可供讀取和寫入。
使用 Always On 可用性群組複寫資料庫
Always On 可用性群組可協助您達到在虛擬機器上執行的 SQL Server 資料庫高可用性。
您可以將資料庫的指定群組儲存在可用性複本中:
- 您的主要複本會保存主要資料庫。
- 您的次要複本會保存主要資料庫的同步處理次要複本。
如果發生失敗,次要複本將作為容錯移轉目標。 您的主要複本可讀取和寫入。 資料會在每個主要資料庫與每個相關聯的次要資料庫之間進行同步處理。
您也可以將次要複本設定為可讀取。 如此一來,用戶端就可以從多個資料庫存取您的資料,而增加的需求分散在多個複本之間。
Always On 可用性群組會在 Windows Server 容錯移轉叢集上執行,此叢集是由一組共同運作的機器所組成。 此架構可讓您針對在這些電腦上執行的工作負載提供高可用性。 使用 Always On 可用性群組時,叢集中的每個節點 (機器) 都會裝載複本,不論是主要或次要。 每個複本都有一組資料庫。
您可以建立兩個可用性設定組,以在 Azure 中設定Always On 可用性群組:一個用於 Windows Server 容錯移轉叢集節點,另一個用於網域控制站。
Windows Server 容錯移轉叢集必須包含至少三部機器。 主要複本應該有一部 SQL Server 機器,而另一部機器則用於叢集中的次要複本。 要有第三部伺服器作為檔案共用見證伺服器,或者您可以使用 Azure 檔案共用作為見證。
Azure SQL Database 的容錯移轉
您可以使用 SQL Database 自動容錯移轉群組來設定 SQL Database 伺服器上的資料庫群組容錯移轉和複寫。 您可以將定義的原則放在一起,以根據您的需求來執行容錯移轉。 如有必要,您也可以手動觸發容錯移轉。 如果發生失敗,SQL Database 自動容錯移轉可以自動將您的資料庫容錯移轉至次要區域中的次要伺服器。
SQL Database 自動容錯移轉次要資料庫可以用來作為可讀取資料庫。 您可以使用這些次要資料庫來為任何連線用戶端的資料提供讀取存取服務,並且將使用量和需求分散在主要與次要資料庫之間。
如果您使用自動容錯移轉原則,而且主要資料庫群組中至少有一個資料庫發生失敗,則會觸發自動容錯移轉至次要資料庫。 在容錯移轉期間,您的端點會保持不變。 當您已解決導致失敗的問題,而且您已準備好,就可以容錯移轉回復至原始位置。 您可以手動將群組容錯移轉回復至其原始位置。
一個資料庫伺服器中的資料庫可以包含在單一自動容錯移轉群組中。 您也可以將彈性集區中的所有資料庫放在單一容錯移轉群組中。 當主要資料庫屬於彈性集區時,您的次要資料庫也會佈建在彈性集區中。 此次要集區與主要彈性集區同名。
Azure SQL Database 的自動化備份
Azure SQL Database 可以對儲存 7 到 35 天的資料庫進行備份。 SQL Database 使用異地備援儲存體來儲存備份,並且對您在不同區域的資料提供讀取存取權。 即使資料中心發生問題,您的資料庫仍是安全的。
您可以藉由在單一資料庫或彈性集區上建立長期保留原則,來延長備份的保留期 (最多10年)。 SQL Database中的所有資料庫備份都會在待用時加密。 新建立的所有 SQL 資料庫預設啟用透明資料加密。
SQL Database 會在背景自動為您進行備份。 其會根據備份的類型,以不同間隔建立資料庫備份。 例如,其會建立下列備份類型:
- 交易記錄的備份,間隔為 5 到 10 分鐘。
- 每週完整的資料庫備份。 當您建立資料庫時,就會立即進行第一次完整備份。 SQL Database 完成完整備份所需的時間,視資料庫大小而定。
- 每 12 小時針對上次完整備份後變更之任何資料的差異備份。
SQL Database 在提供讀取存取的儲存體 Blob 中保留備份。 然後,它會將這些備份複製到配對的資料中心。
資料庫可以還原至備份的版本。 如果您已設定長期保留,則此備份可用時間可能會長達 10 年。 您可以將已刪除的資料庫還原到刪除之前的時間,最多達保留原則中的保留期限制。
SQL Database 可以將資料庫還原到不同的地理區域。 此程序是透過異地還原來完成,讓您可以將資料庫從一個區域復原到另一個區域,以防整個區域發生問題。
使用 Azure Cosmos DB 的異地複寫
Azure Cosmos DB 是一種低延遲的多模型資料庫服務,可讓您在全域散發資料,並彈性且快速地進行調整。
在 Azure Cosmos DB 中,所有資料都會透明地在您為 Azure Cosmos DB 帳戶設定的區域中進行複寫。 Azure Cosmos DB 會將資料儲存在構成資料庫的容器內,而且您所有的容器都已分割。
您的所有分割區會在每個區域之間複寫。 在每個區域內,您的資料分割會在每個複本散發到不同的容錯網域之前複製。
您的資料至少複寫四次。 您可以設定 Azure Cosmos DB 帳戶,並將您的 Azure Cosmos DB 資料庫設定為跨五個區域散發。 由於您已將此資料庫設定為五個區域,因此 Azure Cosmos DB 會保證您的所有資料至少會有 4 x 5 個複本。
您應該將 Azure Cosmos DB 資料庫設定為跨越至少兩個區域。 您擁有的區域越多,資料的復原性就越高。 您也應該明確地將 Azure Cosmos DB 資料庫設定為有多個寫入區域,以便從可您的所有區域執行讀取和寫入作業。
您也可以設定某些區域的區域備援。 有了區域備援,Azure Cosmos DB 會將資料複本放在任何單一區域中跨多個可用性區域,以提供額外的復原能力。