容錯移轉連結 - Azure SQL 受控執行個體
適用於:Azure SQL 受控執行個體
本文說明如何使用 SQL Server Management Studio (SSMS) 或 PowerShell 針對 SQL Server 與 Azure SQL 受控執行個體之間連結的資料庫進行容錯移轉。
注意
- 將 Azure SQL 受控執行個體設為初始主要複本目前處於預覽狀態,且僅從 SQL Server 2022 CU10 開始提供支援。
必要條件
若要透過連結將您的資料庫容錯移轉至次要複本,必須符合下列必要條件:
- 有效的 Azure 訂用帳戶。 如果您沒有訂用帳戶,請建立免費帳戶。
- 已安裝支援的 SQL Server 版本與必要的服務更新。
- 在主要和次要複本之間設定的連結。
停止工作負載
如果您已準備好將資料庫容錯移轉至次要複本,請先在維護期間停止主要複本的任何應用程式工作負載。 這可讓資料庫複寫趕上次要複寫,以便您可容錯移轉至次要複本,而不會遺失資料。 在容錯移轉之前,請確定您的應用程式不會認可異動至主要複本。
容錯移轉資料庫
您可以使用 SQL Server Management Studio 或 PowerShell 來容錯移轉連結的資料庫。
使用 SSMS 的 [在 SQL Server 與受控執行個體之間進行容錯移轉] 精靈,將資料庫從主要複本容錯移轉到次要複本。
您可從主要或次要複本執行計劃性容錯移轉。 若要執行強制容錯移轉,請連線次要複本。
警告
- 在容錯移轉之前,請停止來源資料庫的工作負載,以便複寫資料庫可完全趕上並進行容錯移轉,而不會遺失資料。 如果您要執行強制容錯移轉,您的資料可能會遺失。
- 在 SQL Server 2019 與舊版容錯移轉資料庫會發生中斷並移除兩個複本之間的連結。 您無法容錯回復到初始主要複本。
- 在使用 SQL Server 2022 維護連結時容錯移轉資料庫目前為預覽狀態。
若要容錯移轉資料庫,請遵循下列步驟:
開啟 SSMS,連線任一複本。
在 [物件總管] 中,以滑鼠右鍵按一下您的複寫資料庫,將滑鼠停留在 [Azure SQL 受控執行個體連結] 上方,然後選取 [容錯移轉……],以開啟 [在 SQL Server 與受控執行個體之間容錯移轉] 精靈。 如果您有來自相同資料庫的多個連結,請在 [物件總管] 的 [Always On 可用性群組] 底下,展開 [可用性群組],然後針對您要容錯移轉的連結以滑鼠右鍵按一下分散式可用性群組。 選取 [容錯移轉……],開啟該特定連結的 [在 SQL Server 與受控執行個體之間進行容錯移轉] 精靈。
在 [簡介] 頁面上,選取 [下一步] 。
[選擇容錯移轉類型] 頁面會顯示每個複本的詳細資料、您選取的資料庫角色,以及支援的容錯移轉類型。 您可從任何複本起始容錯移轉。 如果您選擇強制容錯移轉,您必須核取方塊來表示您瞭解可能遺失資料。 選取 [下一步]。
注意
如果您要移轉至 Azure SQL 受控執行個體,請選擇 [計劃性容錯移轉]。
在 [登入 Azure 與遠端執行個體] 頁面:
- 選取 [登入],提供認證並登入 Azure 帳戶。
- 根據上一頁選取的 [容錯移轉類型],[登入] 選項會以不同方式運作。 對於計劃性容錯移轉,必須登入遠端執行個體 (SQL Server 或 SQL 受控執行個體)。 對於強制容錯移轉,由於支援下列兩種案例,因此登入為選用:
- 真實災害復原:由於主要執行個體在真實災害期間通常無法使用,因此無法登入,且使用者必須立即容錯移轉至次要執行個體,使其成為新主要執行個體。 在解決中斷之後,由於兩個複本現在都具主要角色,連結處於不一致狀態 (核心分裂案例)。
- 災害復原演練:不建議使用強制容錯移轉來執行災害復原演練,因為可能會遺失資料。 不過,在演練期間,由於主要執行個體可供使用,因此支援登入,且您可以選擇反轉這兩個複本的角色,以避免核心分裂案例。
在 [容錯移轉後作業] 頁面,SQL Server 2022 與舊版之間的選項不同,以及您是否能夠連線主要執行個體也有所有不同。
- 針對 SQL Server 2022,您可選擇停止複本之間的複寫,這會在容錯移轉完成之後卸除連結及分散式可用性群組。 如果您要維護連結並繼續複製複本之間的資料,請勿勾選核取方塊。 如您選擇卸除連結,若您僅為將資料庫複製至 Azure 而建立可用性群組,且不再需要它,則您也可核取此方塊來卸除可用性群組。 核取符合您案例的方塊,然後選取 [下一步]。
- 針對 SQL Server 2019 與舊版,預設為選取 [移除連結] 選項,且您無法取消選取,因為容錯移轉至 SQL 受控執行個體會停止複寫、中斷連結,並卸除分散式可用性群組。 核取方塊來表示您瞭解連結將遭到卸除,然後選取 [下一步]。
- (選用) 如果您能夠在上一頁登入 SQL Server 執行個體,您也可以選取 [清除] 區段方塊,在強制容錯移轉之後刪除 SQL Server 執行個體的可用性群組。
檢閱 [摘要] 頁面的動作。 您可選擇性選取 [指令碼] 來產生指令碼,以便於未來使用相同連結輕鬆容錯移轉資料庫。 當您準備好容錯移轉資料庫時,請選取 [完成]。
完成所有步驟之後,[結果] 頁面會在成功完成的動作旁顯示勾號。 您現在可以關閉視窗。
如果您選擇維護 SQL Server 2022 連結,次要複本會變成新主要複本,連結仍為作用中,且您可容錯回復至次要複本。
如果您是使用 SQL Server 2019 與舊版,或如果您選擇卸除 SQL Server 2022 連結,則會卸除連結,且在容錯移轉完成之後不再存在。 每個複本的來源資料庫和目標資料庫都可以執行讀取/寫入工作負載。 它們完全獨立。
重要
在成功容錯移轉至 SQL 受控執行個體之後,請手動將應用程式連接字串重新指向 SQL 受控執行個體 FQDN,才能完成移轉或容錯移轉流程並繼續在 Azure 執行。
在容錯移轉之後檢視資料庫
針對 SQL Server 2022,如果您選擇維護連結,您可以檢查分散式可用性群組是否存在於 SQL Server Management Studio 物件總管的可用性群組。
如果您在容錯移轉期間卸除連結,您可使用 [物件總管] 來確認分散式可用性群組已不存在。 如果您選擇保留可用性群組,資料庫仍會進行同步處理。
清除可用性群組
由於使用 SQL Server 2022 進行容錯移轉並不會中斷連結,因此您可以在容錯移轉之後維護連結,這會讓可用性群組與分散式可用性群組處於作用中狀態。 無須進行任何進一步的動作。
不過,卸除連結只會卸除分散式可用性群組,而可用性群組則保持作用中。 您可以決定保留可用性群組,或將其卸除。
如果您決定卸除可用性群組,請取代下列值,然後執行範例 T-SQL 程式碼:
<AGName>
使用 SQL Server 上的可用性群組 (用來建立連結的群組) 的名稱。
-- Run on SQL Server
USE MASTER
GO
DROP AVAILABILITY GROUP <AGName>
GO
相關內容
如需連結功能的詳細資訊,請檢閱下列資源:
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應