設定和監視可用性
現在您已了解所有可能的情況,接下來需要為 Azure SQL Database 或 Azure SQL 受控執行個體所屬的特定工作負載建立策略。
做出正確的選擇
建立策略的很大一部分是回頭思考工作負載的需求。 要考慮的一些問題如下:
- 是否需要長期備份? 還是 1-35 天就夠了?
- RTO 和 RPO 需求為何?
- 根據 SLA,哪一個服務層級最合適?
- 是否需要可用性區域?
- 是否需要異地複寫的 HADR 或容錯移轉群組?
- 「應用程式是否已備妥?」
這些問題的答案可協助縮小應部署以符合可用性需求的設定範圍。
資料專業人員通常會忽略最後一個問題:應用程式是否已備妥?這項考量對於達成您所需的 SLA 而言非常重要。
您必須確定資料庫符合可用性需求,但也必須確定您的應用程式符合這些需求。 您也需要確定資料與應用程式之間的連線符合您的需求。 例如,如果應用程式和資料庫位於不同的區域,這將會增加網路延遲。 請盡可能將您的應用程式和資料放在一起。 在此課程模組中,您也瞭解在應用程式中實作重試邏輯對於維護可用性有多重要。
監視可用性
Azure SQL 提供數種工具和功能來監視可用性的特定層面。 這些工具包括 Azure 入口網站、T-SQL 以及 PowerShell、az CLI 和 REST API 等介面。
下列各節描述使用這些工具來監視可用性的一些範例。
區域和資料中心可用性
區域和資料中心的可用性對於受控執行個體或資料庫部署的可用性而言非常重要。 Azure 狀態和 Azure 服務健康狀態是了解資料中心或區域 (包括 Azure SQL 等特定服務) 運作中斷的關鍵。
Azure 狀態是儀表板,顯示在任何 Azure 全域區域中造成問題的任何服務。 您可以使用 RSS 摘要來取得 Azure 狀態變更的通知。
您可以在 Azure 入口網站中檢視 Azure 服務健康狀態。 Azure 服務健康狀態提供有關服務問題、已規劃的維護事件、健康狀態建議和健康狀態歷程記錄的資訊。 您也可以設定警示,以透過電子郵件或簡訊來通知可能會影響可用性的任何事件。
執行個體、伺服器和資料庫可用性
除了 Azure 服務事件之外,您還可以在 Azure 入口網站中檢視 Azure SQL 受控執行個體或 Azure SQL Database 資料庫的可用性。
若要檢視受控執行個體或資料庫無法使用的可能原因,其中一個方法是藉由使用 Azure 入口網站或 REST API 檢查資源健康狀態。
您一律可以使用 SQL Server Management Studio (SSMS) 等標準 SQL Server 工具來連線到受控實例或資料庫伺服器,並檢查這些資源的狀態。 您可以使用工具或 T-SQL 查詢。
Azure CLI 之類的介面可以顯示 Azure SQL 的狀態。 例如:
az sql mi list
會列出受控執行個體的狀態。az sql db list
會列出 Azure SQL Database 的狀態。
您也可以使用 PowerShell 命令來判斷 Azure SQL Database 的可用性。 例如:
Get-AzSQLDatabase
會取得伺服器上的所有資料庫,以及這些資料庫的詳細資料 (包括狀態)。- REST API 在使用上並不容易,但是您可以用來取得受控執行個體和資料庫的狀態。
備份與還原記錄
Azure SQL 會自動備份資料庫和交易記錄。 無法使用標準備份歷程記錄,但是您可以藉由使用 Azure 入口網站或 CLI 介面來檢視長期備份保留歷程記錄。 此外,在 Azure SQL 受控執行個體中,您可以使用 XEvents 來追蹤備份歷程記錄。
任何使用還原時間點的資料庫還原都會建立新的資料庫。 您可以使用 Azure 活動記錄來檢視建立資料庫的作業。
複本狀態
複本會用於業務關鍵服務層級。 您可以使用 DMV sys.dm_database_replica_states來檢視複本的狀態。
容錯移轉原因
若要判斷 Azure SQL 受控執行個體或資料庫部署的容錯移轉事件原因,請藉由使用 Azure 入口網站或 REST API 來檢查資源健康狀態。
適用於 Azure SQL 的 System Center 管理組件
System Center 提供管理組件來監視 SQL 受控執行個體和 Azure SQL Database。 如需需求和詳細數據, 請參閱管理元件檔 。