您可以使用 Azure 資料庫移轉服務和 Azure SQL 移轉延伸模組來評估、取得適當大小的 Azure 建議,並將資料庫從內部部署 SQL Server 移轉至 Azure SQL。 在移轉後工作中,我們引進了具有獨立工作流程的新用戶體驗,可用來將登入 (預覽) 和伺服器角色從內部部署來源 SQL Server 移轉至 Azure SQL 目標。
此登入移轉體驗會自動執行手動工作,例如登入與其對應使用者對應的同步處理,以及複寫伺服器/安全性實體權限和伺服器角色。
目前僅支援 Azure 虛擬機器目標上的 Azure SQL 受控執行個體和 SQL Server。
建議您先完成將內部部署資料庫的資料庫移轉至 Azure SQL,然後再開始登入移轉。 它會確保資料庫層級的使用者已移轉至目標;因此,登入移轉程序會執行使用者登入對應同步處理。
在本教學課程中,了解如何使用適用於 Azure Data Studio 的 Azure SQL 移轉延伸模組,將一組不同的 SQL Server 登入從內部部署 SQL Server 移轉至 Azure SQL 受控執行個體。
注意
您可以使用適用於 Azure Data Studio、PowerShell 或 Azure CLI 的 Azure SQL 移轉延伸模組來啟動登入移轉程序。
在本教學課程中,您會了解如何:
- 在 Azure Data Studio 中開啟 [移轉至 Azure SQL 精靈]
- 啟動 SQL Server 登入移轉精靈
- 從來源 SQL Server 執行個體選取您的登入
- 選取並連線到您的 Azure SQL 目標
- 啟動 SQL Server 登入移轉,並監視進度完成
注意
僅 Azure SQL 受控執行個體目標才支援 Windows 帳戶移轉。
必要條件
開始教學課程之前:
從 Azure Data Studio Marketplace 中安裝 Azure SQL 移轉延伸模組。
建立 Azure SQL 受控執行個體或 Azure 虛擬機器上的 SQL Server 的目標執行個體。
Azure Data Studio、PowerShell 或 Azure CLI 等用戶端執行登入移轉的電腦,應該能夠同時連線到來源和目標 SQL 伺服器。
確保您用來連線到來源和目標 SQL Server 執行個體的登入是 sysadmin 伺服器角色的成員。
作為選用步驟。 您可以使用下列其中一個教學課程,將內部部署資料庫移轉至選取的 Azure SQL 目標:
移轉案例 移轉模式 將 SQL Server 移轉至 Azure SQL 受控執行個體 線上 / 離線 將 SQL Server 移轉至 Azure 虛擬機器上的 SQL Server 線上 / 離線 如果您尚未完成資料庫移轉且已開始登入移轉程序,登入和伺服器角色的移轉仍會發生,但不會正確執行登入/角色對應。
不過,您可以隨時執行登入移轉程序,以更新最近移轉資料庫的使用者對應同步處理。
針對 Windows 帳戶,確保目標 SQL 受控執行個體具有 Microsoft Entra 讀取權限。 此選項可透過具有特殊許可權角色系統管理員角色的使用者,透過 Azure 入口網站 進行設定。 如需詳細資訊,請參閱佈建 Microsoft Entra 管理員 (SQL 受控執行個體)。
本機 Active Directory 網域服務 (AD DS) 與 Microsoft Entra ID 之間的網域同盟必須由系統管理員設定。 需要此設定,內部部署 Windows 使用者才能與公司 Microsoft Entra ID 同步。 然後,登入移轉程序將能夠為目標受控執行個體中對應的 Microsoft Entra 使用者建立外部登入。
如果您的 Microsoft Entra 租用戶尚未設定網域同盟,系統管理員可以參考下列連結以開始使用:
僅 Azure SQL 受控執行個體目標才支援 Windows 帳戶移轉。 登入移轉精靈會顯示提示,您必須輸入 Microsoft Entra 網域名稱,才能將 Windows 使用者轉換成其 Microsoft Entra 版本。
例如,如果 Windows 使用者是
contoso\username
,而 Microsoft Entra 網域名稱是contoso.com
,則轉換後的 Microsoft Entra 使用者名稱會是username@contoso.com
。 若要正確進行此轉換,應該設定本機 Active Directory 與 Microsoft Entra ID 之間的網域同盟。對於大量的登入,我們建議使用自動化。 透過 PowerShell 或 Azure CLI,您可以使用
CSVFilePath
參數,將 CSV 檔案類型傳遞為要移轉的登入清單。使用 Azure Data Studio 進行大量登入移轉可能很耗時,因為您需要在登入選取畫面上手動選取每個要移轉的登入。
在 Azure Data Studio 中開啟登入移轉精靈
若要開啟登入移轉精靈:
在 Azure Data Studio 中,移至 [連線]。 選取並連線至 SQL Server 的內部部署執行個體。 您也可以連線至 Azure 虛擬機器上的 SQL Server。
以滑鼠右鍵按一下伺服器連線,然後選取 [管理]。
在伺服器功能表中的 [一般] 下,選取[Azure SQL 移轉]。
在 Azure SQL 移轉儀表板中,選取 [新增登入移轉] 按鈕以開啟登入移轉精靈。
設定登入移轉設定
在 [新增登入移轉精靈] 的 [步驟 1: Azure SQL 目標] 中,完成下列步驟:
在 [步驟 2: 選取要移轉的登入] 中,選取您想要從來源 SQL Server 移轉至 Azure SQL 目標的登入。 針對 Windows 帳戶,系統會提示您輸入相關聯的 Microsoft Entra 網域名稱。 然後選取 [移轉] 以開始登入移轉程序。
開始登入移轉程序
監視您的移轉
您可以選取登入的 [移轉狀態] 底下的連結來監視每個登入的程序。
在開啟的對話方塊中,您可以監視程序的個別步驟,而選取其中任何一個步驟將會填入具有下列相關詳細資料的步驟詳細資料。
[移轉詳細資料] 頁面會顯示登入移轉程序所涉及的不同階段:
狀態 | 描述 |
---|---|
登入的移轉 | 將使用者選取的登入移轉至目標 |
伺服器角色的移轉 | 所有伺服器角色都會從來源移轉至目標 |
使用者登入對應 | 資料庫使用者與已移轉登入之間的同步處理 |
登入伺服器角色對應 | 將在目標中設定登入的伺服器角色成員資格和角色之間的成員資格 |
建立伺服器和物件 (安全性實體) | 目標中登入的層級權限 |
建立伺服器和物件 (安全性實體) | 目標中伺服器角色的層級權限 |
移轉後步驟
您的目標 Azure SQL 現在應該會有您選取要移轉的登入,除了來自來源 SQL Server 的所有伺服器角色以外,相關聯的使用者對應、角色成員資格和權限也會複製過來。
您可以使用移轉的其中一個登入來登入目標 Azure SQL,輸入與來源 SQL Server 執行個體上相同的密碼,藉此驗證。
如果您也已移轉 Windows 帳戶,在使用 Windows 帳戶在來源 SQL Server 上所擁有的相同密碼登入目標受控執行個體時,請務必勾選 [Microsoft Entra ID - 密碼] 選項。
使用者名稱的格式應該是
username@contoso.com
(登入移轉精靈的步驟 2 中提供的 Microsoft Entra 網域名稱)。
限制
下表描述 Azure SQL 目標支援的登入移轉的目前狀態,依登入類型:
Target | 登入類型 | 支援 | 狀態 |
---|---|---|---|
Azure SQL Database | SQL 登入 | No | |
Azure SQL Database | Windows 帳戶 | No | |
Azure SQL 受控執行個體 | SQL 登入 | Yes | 預覽 |
Azure SQL 受控執行個體 | Windows 帳戶 | Yes | 預覽 |
Azure VM 上的 SQL Server | SQL 登入 | Yes | 預覽 |
Azure VM 上的 SQL Server | Windows 帳戶 | No |
Azure 虛擬機器上的 SQL Server
此 Azure SQL 目標不支援 Windows 帳戶移轉
Azure Data Studio 中僅支援沒有覆寫選項的 SQL Server 預設埠 (1433)。 替代方法是使用 PowerShell 或 Azure CLI 來完成此類型的移轉。
Azure Data Studio 中僅支援沒有覆寫選項的主要 IP 位址。 替代方法是使用 PowerShell 或 Azure CLI 來完成此類型的移轉。