SQL Server Management Studio(SSMS)中的 Migrate SQL Server 功能,幫助您評估 SQL Server 實例、比較 Azure SQL 遷移目標、檢視遷移準備狀況、取得目標大小與定價建議,並開始遷移至 Azure。
| Azure Arc 啟用 | 詳細資料 |
|---|---|
| 是的 | SSMS 使用從 Azure Arc 收集的準備度評估。這些評估包括相容性發現、目標規模、價格估算(如有)及建議的遷移路徑。 |
| No | SSMS 會執行評估並比較支援的 Azure SQL 目標。 報告可包含遷移準備度、相容性發現、尺寸建議、價格估算及推薦遷移路徑。 從結果中,你可以透過使用 SQL 受管理執行個體 連結、原生備份與還原或 Azure 資料移轉服務(Azure DMS)開始遷移。 |
你也可以設定 Azure SQL 目標,並從 SSMS 或 Azure 入口網站監控遷移過程。
先決條件
- SQL Server Management Studio 22 或更新版本。
- 一個帶有系統管理員權限的 SQL Server 實例登入來執行遷移。
如需了解僅供評估的權限,請參閱 權限。
安裝和組態
- 使用 Visual Studio 安裝程式安裝最新版本的 SQL Server Management Studio(SSMS)。
- 在 Visual Studio 安裝程式中,選擇 Modify 來安裝你的 SSMS。
- 選擇混合與 遷移 工作負載。
- 下載 時選擇「安裝」,然後選擇 「修改 」來完成安裝。
移轉程序
工作流程取決於你的 SQL Server 實例是否啟用了 Azure Arc。
此工作流程適用於未被 Azure Arc 啟用的 SQL Server 實例。
連接 SQL Server
從 SSMS 開始遷移工作流程。
- 開啟 SSMS。
- 連接到你的原始 SQL Server 實例。
- 在 物件總管 中右鍵點擊你的 SQL Server 實例,然後選擇遷移 SQL Server。
此操作會開啟 遷移 登陸頁面,您可以評估來源環境、比較目標,並開啟適當的遷移體驗。
評估遷移準備狀況
評估遷移相容性並產生目標建議。
遷移登陸頁面會開啟至 資料庫評估 階段。
Azure 遷移準備評估您的 SQL Server 環境,並協助您選擇合適的 Azure SQL 目標。 評估評估遷移相容性,並可提供目標、規模及定價建議。
若要執行評估:
從遷移登陸頁面選擇執行評估。
評估完成後,打開產生的 HTML 報告。
檢視可用的遷移目標與建議:
- 移轉準備
- 相容性發現
- 建議的 Azure SQL 目標
- 最小目標配置
- 運算與儲存容量調整
- 預估每月費用
- 可用價格選項
報告可比較以下目標:
- Azure SQL Database
- Azure SQL 受控執行個體
- 在 Azure 虛擬機器上的 SQL Server
移民準備等級
評估使用以下面向使用者的遷移準備度類別:
| 類別 | 說明 |
|---|---|
| Ready | 資料庫可無需審查條件遷移至目標。 |
| 已備妥條件 | 資料庫在遷移前需檢視條件,包括問題、警告、受影響物件及建議的修復措施。 |
顯示為 有條件地準備就緒 的目標,可能包含需要修正的發現項目。 在規劃遷移前,開啟目標詳細資料以檢視受影響的資料庫與物件。
目標尺寸建議
當有尺寸資訊時,報告可包含:
- 推薦服務等級
- vCore 推薦的計算配置
- 推薦儲存方式
- 資料庫層級大小調整(針對 Azure SQL Database 目標)
- 目標特定儲存配置
- 根據評估中的運算、記憶體、儲存體及 I/O 輸入而提出建議的理由
規模代表根據報告產生時可用評估資料,建議的最小目標配置。 在配置目標前,驗證該建議與預期生產工作負載、成長、韌性及營運需求。
小提示
檢視建議細節,了解影響建議配置的尺寸因素。 根據可用的評估資料,這些因素可能包括運算、記憶體、儲存、IOPS 及 I/O 吞吐量。
價格建議
當價格資訊可取得時,報告會提供每個評估目標的每月預估成本。 估價可能包括:
- 計算成本
- 儲存成本
- 每月總預估費用
- 定價區域
- 貨幣
- 定價基礎
- 可用的預留或節省方案定價
承諾定價會影響計算費用,而儲存則可繼續分開定價。 若目標或定價選項無法取得價格,報告會顯示該值為不可得,而非計算假設折扣。
Important
評估報告中的價格為估算。 實際的 Azure 費用會因使用量、設定、區域、優惠、授權選擇、折扣、稅金以及 Azure 價格變動而有所不同。 使用 Azure 定價工具及貴組織的商業協議,在配置前驗證成本。
選取目標
在準備前,先比較評估中的目標。
評估結束後,請在設定目的地前比較可用的遷移目標。
針對每個目標,請回顧:
- 移轉準備
- 相容性發現
- 預估每月費用
- 最低建議目標配置
- 推薦服務等級
- 運算與儲存建議
- 建議的詳細資料
報告強調了一項建議的移民目標。 選擇 「查看詳情 」以檢視資料庫準備度、評估結果、目標設定、規模資訊及價格資訊,然後再做決定。
選擇目標後:
選擇 Provision Target 以存取 Azure SQL hub。
建立符合你遷移需求的 Azure SQL 目標:
- Azure SQL Database
- Azure SQL 受控執行個體
- Azure VM 上的 SQL Server
驗證已配置的設定是否符合建議及你的生產需求。
移轉資料
選擇符合您目標、停機需求及營運需求的遷移方式。
從 遷移 登陸頁面,選擇 遷移資料。
SQL 受管理執行個體 連結
使用 SQL 受管理執行個體 連結,持續在 SQL Server 與 Azure SQL 受控執行個體 之間複製資料。
考慮這種方法用於需要最少停機時間的線上遷移。
備份與還原
使用 SSMS 備份與還原功能來進行 SQL Server 遷移。
當停機時間可接受且來源與目標支援所需的備份與還原路徑時,請考慮此方法。
Azure 資料移轉服務
在支援的遷移情境下使用Azure 資料移轉服務。
當所選來源和目標支援時,請使用離線或線上遷移選項。
考慮使用 Azure DMS 進行大規模或複雜的遷移。
監控移轉
透過適當的監控經驗追蹤遷移進度。
追蹤遷移進度並切換:
- 關於 Azure DMS 遷移,請使用 Azure DMS 監控體驗。
- 對於 受控執行個體 連結遷移,請監控 SQL 受管理執行個體 連結。
SQL Server 升級
除了Azure遷移外,SSMS 還提供 資料庫相容性升級功能。 升級評估會識別與破壞性變更、行為變更及已棄用功能相關的相容性問題。 報告同時提供跨平台資料庫遷移的功能與一致性檢查。
升級評估
- 從 遷移到更高版本的 SQL Server 區段選擇 Upgrade Assessment。
- 允許工具評估相容性升級準備度。
- 檢視報告中的重大變更與已淘汰的功能。
資料庫升級
- 從「遷移到更高版本的 SQL Server」頁面選擇「升級 SQL Server」。
- 請依照 升級資料庫 的步驟操作。
- 測試並完成相容等級升級。
最佳做法
在規劃遷移前先做評估。
檢視目標層級與資料庫層級的準備情況。
將 Ready with Conditions 視為審查並處理相關發現的指示,而非自動批准遷移。
驗證目標規模與代表性工作負載數據、預期成長、韌性及效能需求。
驗證價格估算與預期區域、授權模式、商業協議及當前 Azure 價格。
當生產工作量需要最小停機時間且該方法符合你的情境時,選擇線上遷移方式。
在非生產環境中測試遷移與應用程式行為。
在遷移期間及遷移後監控效能。
在已核准的變更時段內規劃切換。
遷移選項比較
| 移轉方法 | 主要目標 | 停機時間設定 | 請考量何時 |
|---|---|---|---|
| SQL 受管理執行個體 連結 | Azure SQL 受控執行個體 | 最小 | 需要持續複製並進行線上切換。 |
| 備份與還原 | 支援的 SQL Server 和 Azure SQL 目標 | 中度至高 | 計畫性停電是可以接受的。 |
| 日誌傳送 | Azure SQL 受控執行個體 在支援的整合場景中 | 低到中 | 基於日誌的遷移方法符合情境需求。 |
| Azure DMS | 支援的 Azure SQL 目標 | 這取決於所選的遷移模式 | 需要集中式遷移協調。 |
已知問題
評估失敗
- 確認與來源資料庫的連線性。
- 請確認登入是否具備評估所需的權限。
- 確保 SSMS 及遷移元件都是最新的。
- 檢視產生報告中的評估錯誤。
無法提供尺寸或價格建議
- 確認評估已成功完成。
- 檢視報告中是否有缺失的評估或定價資料。
- 確認所選目標、地區、貨幣及定價選項是否獲得推薦資料的支持。
- 不要把無法取得的價格解讀為零成本的建議。
遷移效能緩慢
- 檢查來源端和 Azure 之間的網路頻寬和延遲。
- 檢視目標尺寸建議。
- 驗證運算、儲存、IOPS 及吞吐量需求。
- 當 Azure ExpressRoute 符合網路架構與遷移需求時,請考慮它。
切換驗證失敗
- 驗證資料完整性檢查。
- 檢視應用程式與目標平台的相容性。
- 檢視未解決的狀況與遷移錯誤。
- 在切換前確認複製或同步是否正常。
許可
要執行遷移,你的 SQL Server 實例登入需要系統管理員權限。
要在不執行或監控遷移的情況下執行評估,你需要以下最低權限。
| 物件類型 | 資料庫或物件名稱 | 特權 |
|---|---|---|
| Server | CONNECT ANY DATABASE |
|
| Server | CONNECT SQL |
|
| Server | VIEW ANY DATABASE |
|
| Server | VIEW ANY DEFINITION |
|
| Server | VIEW SERVER STATE |
|
| 資料庫 | 所有資料庫 | SELECT sys.sql_expression_dependencies |
| 資料庫 | msdb |
EXECUTE dbo.agent_datetime |
| 資料庫 | msdb |
SELECT dbo.syscategories |
| 資料庫 | msdb |
SELECT dbo.sysjobhistory |
| 資料庫 | msdb |
SELECT dbo.sysjobs |
| 資料庫 | msdb |
SELECT dbo.sysjobsteps |
| 資料庫 | msdb |
SELECT dbo.sysmail_account |
| 資料庫 | msdb |
SELECT dbo.sysmail_profile |
| 資料庫 | msdb |
SELECT dbo.sysmail_profileaccount |
| 資料庫 | msdb |
SELECT dbo.syssubsystems |
| 資料庫 | msdb |
DB DATA READER |
| 資料庫 | msdb |
EXECUTE |