適用於:Azure SQL 受控實例
當移轉到 Azure SQL 受控實例 時,本文比較了 Log Replay Service(LRS) 與 受控實例鏈接。
概觀
自 2018 年 11 月服務啟動以來,Log Replay Service (LRS) 已用於移轉至 Azure SQL 受控實例。 在幕後,LRS 依賴記錄傳送的實作,該實作也驅動 Azure 資料庫遷移服務 (DMS)和適用於 Azure Data Studio 的 Azure SQL 遷移延伸模組。
在 2022 年 3 月,受控實例連結 (MI 連結) 已引進為效能較佳的移轉選項,並承諾最佳的最短停機時間移轉。 受控實例連結會使用 分散式 Always On 可用性群組 技術,將數據從 SQL Server 近乎即時地復寫到 Azure SQL 受控實例。 透過連結,您也可以在線上從 SQL 受控實例切換至 SQL Server 2022 或更新版本,以作為遷移保險措施。
LRS 和 MI 連結在功能上彼此互補,每個技術都符合不同的業務需求。 檢閱每個工具的功能,以根據您的特定情況判斷最適合用於移轉的功能。
比較 LRS 和 MI 連結
LRS 與 MI 連結之間的基本差異源於基礎技術。 由於 LRS 是以記錄傳送為基礎,因此會持續從 SQL Server 擷取差異和事務歷史記錄備份、上傳至 Azure Blob 記憶體,以及還原至 SQL 受控實例。 此程式並非即時,因為備份檔案、上傳檔案及還原檔案需要時間。 LRS 的效能是以備份區塊的大小為基礎。
相反地,MI 連結會使用 AlwaysOn 可用性群組技術,以近乎即時的方式將事務歷史記錄記錄從 SQL Server 傳送至 SQL 受控實例,使其成為效能更高的移轉解決方案。 然而,若要設定受控實例連線,您必須在 SQL Server 與 SQL 受控實例之間設定 VPN,並開啟防火牆中的適當埠,而 LRS 則可直接使用公用端點。 LRS 可用於 SQL Server 2008 和更新版本的所有版本,而 MI 連結只能用於 SQL Server 2016 和更新版本,僅適用於 Standard、Enterprise 和 Developer 版本。
備註
SQL Server 2025 引入了獨立的企業開發者版與標準開發者版 SQL Server。
MI 連結的主要優點是能夠執行反向移轉至 SQL Server 2022 和更新版本,這與 LRS 並無可能。 使用MI連結進行移轉的另一個主要優點是,在移轉進行時,SQL 受控實例上的資料庫可用於唯讀工作負載。 LRS 無法使用這項功能,因為資料庫處於還原狀態,直到移轉完成為止。 同樣地,當您執行反向移轉至 SQL Server 2022 和更新版本時,SQL Server 上的只讀工作負載在移轉進行時可以存取資料庫。
下表更詳細地比較 LRS 和 MI 連結:
| 功能 | 受控實例連結 (MI 連結) | 日誌回放服務 (LRS) | 注意事項 |
|---|---|---|---|
| 基礎技術 | 分散式可用性群組 (AG) | 日誌傳送 | MI 連結會使用分散式可用性群組進行複寫,相較於 LRS 所使用的記錄傳送技術,此群組較新且更進階。 |
| 複寫效能 | 近乎即時。 | 每隔幾分鐘還原一次。 | 透過 MI 連結複寫資料比使用 LRS 套用事務歷史記錄備份更有效能。 |
| 最低支援的來源版本 | SQL Server 2016 和更新版本 | SQL Server 2008 和更新版本 | LRS 可支援比 MI 連結更舊的 SQL Server 版本。 |
| 最低支援的 Windows Server 版本 | Windows Server 2012 R2 | Windows 伺服器 2008 | LRS 可支援比 MI 連結更舊得多的 Windows Server 版本。 |
| 唯讀備用 | 支持 | 不支援。 | 復寫進行時,透過連結複寫的 SQL 受控實例資料庫可用於唯讀工作負載,這可讓您在移轉至 Azure 之前測試移轉,或使用資料庫。 同樣地,當您執行反向移轉至 SQL Server 2022 和更新版本時,SQL Server 上的只讀工作負載在移轉進行時可以存取資料庫。 LRS 無法使用此功能。 |
| TDE 加密資料庫的復寫 | 是,需要將安全性密鑰匯入 SQL 受控實例。 | 是,需要將安全性密鑰匯入 SQL 受控實例。 | 在開始移轉之前,將對應的加密憑證從 SQL Server 移轉至 SQL 受控實例的需求和程式,這兩個移轉選項都相同。 |
| 網路連線類型 | - 私人端點 已設定包含內部和外部埠的 VPN |
公用端點 | 雖然 MI 連結提供額外的安全性層級,並提供 VPN 作為選項,但相較於 LRS,網路功能更難以設定。 根據預設,LRS 提供簡化的體驗,因此您可以立即使用它,而不需要任何網路或 VPN 設定。 LRS 預設會使用公用端點,比 MI 連結所使用的 VPN 不安全,而且它可能無法滿足一些最苛刻的安全性需求,因為它會使用公開的 Azure Blob 記憶體帳戶作為媒介,在將數據還原至 SQL 受控實例之前儲存數據。 雖然可以搭配 LRS 使用私人端點來讓數據傳輸更安全,但會增加初始設定複雜性。 |
| 傳輸中的數據加密 | - 使用 AES 加密的數據,以及 - SSL 用於數據傳輸加密。 |
SSL 用於數據傳輸加密。 | MI 連結會使用額外的數據 AES 加密層。 SSL 用於傳輸移轉工具的數據。 |
| 複寫的驗證 | 由信任授權單位簽署的憑證(CA) | 受控識別或 SAS 令牌 | MI 連結需要證書頒發機構單位 (CA) 簽署憑證以進行驗證。 對於 LRS,使用受控識別比使用自我產生的 SAS 令牌更安全。 |
| 受到系統更新或故障轉移的影響 | 否,除了短暫故障切換時的最低限度干擾。 | - 針對一般用途實例,移轉會在中斷后自動暫停和繼續。 - 對於業務關鍵實例,移轉程式會因中斷而取消,而且必須手動重新啟動。 |
MI 連結具有復原性,且移轉不會受到 SQL 受控實例故障轉移的影響。 相反地,在一般用途服務層中,SQL 受管理執行個體的重新啟動或故障轉移會延遲 LRS 移轉,而在商業關鍵服務層中的執行個體,移轉過程會重新啟動。 |
| 復寫持續時間 | 使用連結可無限制地重複使用時間(可達數月甚至數年)。 | LRS 作業最多可以執行 30 天。 | MI 連結可以無限時間執行。 LRS 限制為最多 30 天的連續記錄傳送,之後會自動停止移轉,而且必須從頭重新啟動。 |
| 移轉類型 | 真實的在線移轉,只有短暫的故障切換(以秒計算)。 | - 在切換過程中預期會有停機時間,停機持續至最後一個備份檔還原完成。 - 對於業務關鍵服務層級中的實例,切換過程需要相對較長的時間。 |
MI 連結是唯一的解決方案,為所有 SQL 受控實例服務層級提供最短停機時間解決方案(<1 分鐘)。 使用 LRS 時,最後一個備份檔仍會在完全移轉期間進行還原,因此,根據上次備份檔的大小和還原它所需的時間,可能會有相當長的等待時間,直到資料庫在 SQL 受控實例上可用為止。 使用 LRS 移轉至業務關鍵服務層級時,移轉切換停機時間可能會大幅增加,因為整個資料庫必須從主要節點複寫到次要節點,才能在主要節點恢復工作負載使用。 視整體資料庫大小而定,複寫至其他節點,而停機時間有時可能需要數小時。 因此,使用 LRS 時,資料庫上線的速度可能會比使用 MI 連結時慢得多,而 MI 連結幾乎可以瞬間完成上線。 |
| 源頭需要維護 | 是,定期交易日志備份。 | 否。 | MI 連結需要在移轉期間定期備份來源 SQL Server 實例,以截斷事務歷史記錄並防止磁碟空間用盡。 相反地,LRS 不需要維護。 |
| 韌性 | 如果 SQL Server 重新啟動,則會自動繼續連結複寫。 | - 如果備份鏈結中斷或最後一個備份檔未正確指定,移轉就會停滯。 - 不支援相同資料夾中多個資料庫的備份檔(移轉失敗)。 |
MI 連結比 LRS 更具有彈性,因為當問題(例如非預期的停機時間、升級、網路連線中斷及其他問題)得到解決後,複寫會自動恢復。 此外,MI 連結能夠適應 SQL MI 故障轉移或服務更新。 某些條件會導致 LRS 停滯。 如果移轉至一般用途服務層級中斷,則 LRS 移轉會自動重新啟動,但如果移轉至業務關鍵服務層級中斷,則必須重新啟動。 |
| 從 SQL MI 反向移轉至 SQL Server | 支持離線和線上移轉至 SQL Server 2022 和更新版本。 | 不支援。 | MI 連結是唯一提供在線和離線反向移轉至 SQL Server 2022 和更新版本的解決方案 - 反向移轉不適用於舊版 SQL Server。 |
選擇什麼?
LRS 與 MI 連結之間的選擇取決於您的情況和業務需求。 移轉解決方案之間的顯著差異在於效能。 LRS 有更簡單的初始設定,可讓您快速移轉。 雖然 MI 連結的初始設定較為複雜,但它可提供更大的復原能力、安全性和彈性。
此外,MI 鏈接的縮短時間也相當短,這對許多客戶來說都是一個顯著的優勢。 事實上,使用 LRS 遷移至業務關鍵服務層級時,可能會有相當大的停機時間,這就是為什麼 MI 連結稱為唯一的「真實在線」移轉至業務關鍵服務層級的原因。
最後,如果您需要資料庫在移轉進行時存取移轉目標上的只讀工作負載,或如果您需要執行反向移轉至 SQL Server 2022 和更新版本,MI 連結是唯一支援這些案例的選項。