為 Azure SQL 資料庫設定免授權待命複本
適用於: Azure SQL 資料庫
此文章描述可如何透過在使用 Azure SQL 資料庫時,指定待命次要災害復原 (DR) 資料庫,從而節省授權成本。
概觀
當次要資料庫複本僅用於災害復原,而且其上沒有任何工作負載執行,或應用程式與其連線時,您可以將資料庫指定為待命複本,從而節省授權成本。 將次要資料庫指定為待命時,Microsoft 會根據產品授權條款規定所提供的容錯移轉權限權益,向您免費提供主要資料庫已獲得授權的虛擬核心數目。 您仍要支付次要資料庫所使用的計算和儲存體費用。
設定新的作用中異地複寫複寫時,您可以指定待命複本,或者也可以將現有複本轉換為待命。
雖然作用中異地複寫支援新增四個次要複本,但您只能指定一個待命次要資料庫複本。 容錯移轉群組支援每個主要資料庫一個次要資料庫複本,而且可以是可讀取,也可以是待命。
在計劃性或非計劃性容錯移轉期間,待命複本會變成新的主要複本,並開始產生一般虛擬核心授權成本,而原始主要複本會變成新的待命次要複本,並停止產生虛擬核心授權成本。
成本效益
如果您將資料庫複本指定為待命,Microsoft 不會向您收取待命複本所使用虛擬核心的 SQL Server 授權成本費用。 不過,因為資料庫會針對整個小時計費,所以如果狀態變更是在小時中間進行,您仍可能會支付整個小時的授權成本。
使用隨用隨付模型的客戶與使用 Azure Hybrid Benefit 模型的客戶,權益會進行不同的轉換。 對於隨用隨付客戶,虛擬核心會在其發票上折扣。 對於使用待命複本之 Azure Hybrid Benefit 的客戶,次要複本所使用的虛擬核心數目會傳回給其授權集區。
例如,作為隨用隨付客戶,如果您有 16 個虛擬核心指派給次要資料庫,則只有 16 個虛擬核心的折扣會出現在發票上 (如果您只將次要資料庫指定為待命)。
在另一個範例中,如果您有 16 個 Azure Hybrid Benefit 授權,而且您部署一個具有 16 個虛擬核心的資料庫,將次要資料庫指定為待命之後,會將 16 個虛擬核心傳回您的授權集區,讓您與其他 Azure SQL 部署搭配使用。
功能能力
下表描述待命次要資料庫複本的功能能力:
功能 | 描述 |
---|---|
有限的讀取工作負載 | 將資料庫指定為待命後,您只能在次要資料庫上執行數量有限的讀取工作負載,例如動態管理檢視 (DMV)、備份和資料庫主控台命令 (DBCC) 查詢。 |
計劃性容錯移轉 | 待命複本支援所有計劃性容錯移轉案例,包括復原演練、將資料庫重新放置到不同區域,以及讓資料庫回復為主要複本。 當次要複本切換為主要複本,就可以提供讀取和寫入查詢。 新的次要複本 (原為主要) 會變成待命複本,且不應用於讀取工作負載。 |
未規劃的容錯移轉 | 在非計劃性容錯移轉期間,當次要複本切換為主要複本後,就可以提供讀取和寫入查詢。 當中斷狀況獲得緩解,且原本的主要複本重新連線之後,其就會變成新的次要待命複本,而且不應該供讀取工作負載使用。 |
備份及還原 | 待命複本與可讀取次要資料庫複本兩者間的備份與還原行為並無差異。 |
監視 | 只要是可讀取次要複本所支援的監視作業,待命複本就都會支援。 |
待命資料庫複本只能用於災害復原。 以下列出待命資料庫上唯一允許的活動:
- 執行維護作業,例如 checkDB
- 連接監視應用程式
- 執行災害復原演練
限制
下表所列為支援及不支援的部署模型:
部署模型 | 計算層 | 服務層級 | 支援的待命複本 | 硬體 |
---|---|---|---|---|
單一資料庫 | 已佈建 | 一般用途 | Yes | 標準系列 (Gen5)、FSv2 系列、DC 列 |
單一資料庫 | 已佈建 | 業務關鍵 | Yes | 標準系列 (Gen5)、DC 系列 |
單一資料庫 | 已佈建 | 超大規模資料庫 | N/A | N/A |
單一資料庫 | 無伺服器 | 全部 | No | N/A |
彈性集區 | 全部 | 全部 | No | N/A |
使用待命資料庫具有下列限制:
- 只有一個次要資料庫複本可指定為待命。
- 不支援無伺服器計算層級。 如果主要或次要資料庫位於無伺服器計算層級中,則無法啟用待命複本。
- 不支援 DTU 購買模型。 您只能使用虛擬核心購買模型為資料庫啟用待命複本。
- 不支援超大規模資料庫服務層級。 只有一般用途和業務關鍵服務層級中的資料庫可以指定為待命。
- 使用容錯移轉群組時,會在資料庫層級 (而非容錯移轉群組層級) 指派待命權限,而且必須針對容錯移轉群組內的每個資料庫單獨指派權限。
- 當複本是次要複本的次要複本 (亦即鏈結程序) 時,不支援指定待命次要複本。
必要條件
- Azure 訂用帳戶。 如果您沒有 Azure 訂閱,請在開始之前,先建立 Azure 免費帳戶。
- 在支援的硬體上執行的主要佈建虛擬核心 Azure SQL 資料庫或業務關鍵服務層級。 要開始使用,請檢閱快速入門。
設定新的待命複本
使用 Azure 入口網站、PowerShell、Azure CLI 或 REST API 設定新的作用中異地複寫關聯圖時,您可以指定待命複本。
若要建立新的作用中異地複寫關聯圖,並在 Azure 入口網站中指定待命次要資料庫,請遵循下列步驟:
在 Azure 入口網站中,前往您的 [SQL Database] 資源。
從 [資源] 功能表選擇 [資料管理] 下的 [複本],然後選取 [+ 建立複本],以開啟 [建立 SQL Database - 異地複本] 頁面。
在 [建立 SQL Database - 異地複本] 頁面上,針對 [複本組態] 下的 [複本類型] 選取 [待命複本]。 選取核取方塊,以確認您將使用待命複本。
為新的待命資料庫提供新的或現有的伺服器,然後使用 [檢閱 + 建立] 執行資料庫和伺服器詳細資料的最終驗證。
使用 [建立] 來確認您的設定,並建立新的待命資料庫複本。
注意
您也可以在建立容錯移轉群組時指定待命資料庫,或在 Azure 入口網站中將資料庫新增至現有的容錯移轉群組。
轉換現有的複本
您可以使用 Azure 入口網站或複寫連結 - 更新 REST API 命令,將現有的複本從一般異地複本轉換為待命複本,或將待命複本轉換為一般異地複本。
若要在 Azure 入口網站轉換現有的複本,請遵循下列步驟:
- 在 Azure 入口網站,前往您的 SQL Database 資源。
- 選取 [資料管理] 下的 [複本]。
- 選取複本的省略符號 (...),然後:
- 若要將一般複本轉換為待命複本,請選擇 [轉換為待命]。 選取 [轉換為待命複本] 快顯視窗上 [我確認...] 旁的方塊,然後選取 [是],儲存變更並轉換複本。
- 若要將待命複本轉換為一般異地複本,請選擇 [轉換為異地]。 選取 [轉換為異地複本] 快顯視窗上 [我確認...] 旁的方塊,然後選取 [是],儲存變更並轉換複本。
若要使用 REST API 複寫連結 - 更新 命令轉換現有的複本,請將 linkType
指定為待命複本的 STANDBY
,或是指定 GEO
,將現有的待命複本轉換回一般異地複本。
檢視授權權限
您可以使用 Azure 入口網站、PowerShell、Azure CLI 或 REST API,檢視現有資料庫的授權權限。
若要使用 Azure 入口網站檢查現有資料庫的授權權限,請遵循下列步驟:
在 Azure 入口網站中,前往您的 [SQL Database]。
在 [概觀] 頁面上,檢查 [Essentials] 下的 [複本類型]。
Standby
的值表示您的資料庫是待命複本,而且您不必支付此資料庫的 SQL 授權成本:
移除待命複本
將資料庫指定為待命之後,您就不能只移除待命屬性。 若要移除待命複本,您必須停止複寫,以結束作用中異地複寫關聯圖。 停止複寫之後,您的資料庫會變成獨立資料庫,並開始產生授權成本。
您可以使用 Azure 入口網站、PowerShell、Azure CLI 或 REST API 停止異地複寫。
若要透過結束 Azure 入口網站中的異地複寫來移除待命複本,請遵循下列步驟:
- 在 Azure 入口網站中,前往您的 [SQL Database]。
- 選取 [資料管理] 下的 [複本]。
- 選取待命複本的省略號 (...),然後從彈出式選單中選取 [停止複寫]。 這會停止複寫,因此您的次要資料庫現在是獨立資料庫,而非指定為待命,並且會產生授權成本。
常見問題集 (FAQ)
這會對價格造成什麼影響?
次要資料庫複本會針對資料與備份的 SQL 授權、計算和儲存體收費。 當您指定待命資料庫複本時,不會針對次要複本使用的虛擬核心授權成本向您收取費用,但您仍需支付計算和儲存體的費用。
待命複本大約可節省多少成本?
如果不包含授權成本,相較於一般完全可讀取次要複本,待命複本可以節省 35% 到 40%,但節省的成本可能會因區域而有所不同。 如需準確的定價,請使用 Azure 定價計算機,然後在 **[災害復原] 下拉式清單中選擇 [待命複本]。
對於待命複本,將免授權多少個虛擬核心?
與主要資料庫使用的虛擬核心數目相同。 建議使用與主要資料庫相同的虛擬核心數目來設定次要複本,以獲得最佳異地複寫效能。
我是否需要具有作用中軟體保證的 SQL Server 授權才能使用待命複本?
否。 由於待命複本不會產生授權成本,因此您不需要具有作用中軟體保證的作用中 SQL Server 授權。
如何使用待命複本?
待命複本僅供災害復原 (DR) 之用,且其上不能有任何作用中讀取工作負載。 唯一可接受的工作負載是監視、維護 (例如執行動態管理檢視 (DMV)) 以及 CheckDB。
是否可將現有的可讀取次要複本更新為待命複本,以節省成本?
是,在 Azure 入口網站的 [複本] 窗格。 選取省略符號 (...),然後選取 [轉換您的複本] 選項。
是否可為待命複本啟用 Azure Hybrid Benefit?
指定待命複本會取代 Azure Hybrid Benefit 折扣,因此您無法使用 Azure 入口網站來修改複本的授權模型。 不過,如果您想要在容錯移轉時使用 Azure Hybrid Benefit 的待命複本,您可以使用 Set-AzSqlDatabase PowerShell 或 az sql db update Azure CLI 命令,將待命複本的授權類型更新為
BasePrice
(Azure Hybrid Benefit),以便待命複本在其於容錯移轉後變成主要複本時使用。容錯移轉期間,對待命複本狀態會有什麼影響?
在計劃性或非計劃性容錯移轉期間,待命複本會變成新的主要複本,並產生一般授權成本,而原始主要複本會變成新的待命次要複本,並停止產生虛擬核心授權成本。 不過,因為執行個體會針對整個小時計費,所以如果狀態變更是在小時中間進行,您仍可能要為新的次要執行個體支付整個小時的授權成本。 如果原始主要複本 (在容錯移轉後變成待命) 使用 Azure Hybrid Benefit,則待命授權折扣會覆寫資料庫使用的 Azure Hybrid Benefit。
如果我將主要或次要複本擴大至較高的虛擬核心大小,該怎麼辦?
擴大時,最佳做法是先擴大次要複本,再擴大主要複本。 雖然次要複本在轉換期間會有比主要複本更高的虛擬核心數目,但待命複本的優點仍然適用。 請嘗試盡可能縮短轉換期間。
如果我將主要或次要複本縮小至較低的虛擬核心大小,該怎麼辦?
縮小時,最佳做法是先縮小次要複本,再縮小主要複本。 雖然次要複本在轉換期間會有比主要複本更高的虛擬核心數目,但待命複本的優點仍然適用。 請嘗試盡可能縮短轉換期間。
如果我移除主要複本與待命複本之間的異地複寫關聯圖,會發生什麼情況?
移除異地複寫之後,待命資料庫會變成一般獨立資料庫,並開始產生授權成本。
是否可取得待命複本的保留容量權益?
是。 保留容量價格與待命複本完全相容。
當我建立新的容錯移轉群組或將資料庫新增至其中時,是否可以指定備用複本?
是,但僅限在建立新的容錯移轉群組,或在 Azure 入口網站中將資料庫新增至現有容錯移轉群組時。 PowerShell 和 Azure CLI 目前無法使用。