移轉指南:將 Oracle 移轉到 Azure 虛擬機器上的 SQL Server
適用於:Azure SQL 資料庫
本指南說明如何使用適用於 Oracle 的 SQL Server 移轉小幫手,將 Oracle 結構描述移轉到 Azure 虛擬機器上的 SQL Server。
如需其他移轉指南,請參閱資料庫移轉。
先決條件
若要將您的 Oracle 結構描述移轉至 Azure 虛擬機器上的 SQL Server,您需要:
- 支援的來源環境。
- 適用於 Oracle 的 SQL Server 移轉小幫手 (SSMA)。
- 目標 SQL Server VM。
- 適用於 Oracle 的 SSMA 和提供者的必要權限。
- 具備網路連線能力,並擁有可存取來源及目標的充足權限。
移轉前
若要準備移轉至雲端,請確認您的來源環境支援此操作,而且您已符合了所有必要條件。 這麼做有助於確保有效率且成功的移轉。
此部分的流程包括:
- 為需要移轉的資料庫紀載詳細目錄。
- 評估這些資料庫是否有潛在的移轉問題或阻礙。
- 解決您所發現的任何問題。
探索
使用 MAP 工具組來識別現有的資料來源,以及您企業所使用功能的詳細資料。 這麼做可讓您更瞭解移轉狀況,並協助您進行規劃。 此流程將包括掃描網路,以識別您的組織 Oracle 執行個體,以及您所使用的版本和功能。
若要使用 MAP 工具組進行詳細目錄掃描,請遵循下列步驟:
開啟 MAP 工具組。
選取 [建立/選取資料庫]:
選取 [建立詳細目錄資料庫]。 為新增詳細目錄資料庫輸入名稱和簡短描述,然後選取 [確定]
選取 [收集詳細目錄資料] 以開啟詳細目錄和評量精靈:
在詳細目錄與評量精靈中,選取 [Oracle],然後選取 [下一步]:
選取最符合您業務需求和環境的電腦搜尋選項,然後選取 [下一步]:
為想要探索的系統輸入認證或是建立新的認證,然後選取 [下一步]:
設定認證的順序,然後選取 [下一步]:
為想要探索的每部電腦各自輸入認證。 您可以針對每部電腦/機器使用唯一的認證,也可以使用 [所有電腦] 認證清單。
驗證您的選取項目,然後選取 [完成]:
掃描完成之後,請查看資料收集摘要。 掃描可能需要幾分鐘的時間,視資料庫的數量而定。 完成後請選取 [關閉]:
選取 [選項] 以產生有關 Oracle 評量和資料庫詳細資料的報告。 同時選取兩個選項以產生報告。
評定
識別資料來源之後,請使用適用於 Oracle 的 SQL Server 移轉小幫手以評估移轉至 SQL Server VM 的 Oracle 執行個體。 小幫手能協助您瞭解來源與目的地資料庫之間的差距。 您可以查看資料庫物件和資料、評估要移轉的資料庫、將資料庫物件移轉至 SQL Server,接著將資料移轉至 SQL Server。
若要建立評定,遵循以下步驟:
在 [檔案] 功能表上,選取 [新增專案]。
提供專案名稱以及儲存專案的位置,然後從清單中選取的SQL Server 移轉目標。 選取 [確定]:
選取 [連線到 Oracle]。 在 [連線到 Oracle] 對話方塊中,輸入 Oracle 連線所需的值:
選取您要移轉的 Oracle 結構描述:
在 [Oracle 中繼資料總管] 中,用滑鼠右鍵按一下您要移轉的 Oracle 結構描述,然後選取 [建立報告]。 這麼做會產生 HTML 報表。 或者,您也可以選取資料庫,然後選取頂端功能表中的 [建立報表]。
檢閱 HTML 報告以了解轉換統計資料、錯誤和警告。 分析該報告以了解轉換問題和解決方式。
您也可以在 Excel 中開啟報告,以取得 Oracle 物件的詳細目錄,以及完成結構描述轉換所需的工作。 報告預設位置在
SSMAProjects
內的報告資料夾中。例如:
drive:\<username>\Documents\SSMAProjects\MyOracleMigration\report\report_2016_11_12T02_47_55\
驗證資料類型
驗證預設資料類型對應,並視需要來根據需求加以變更。 若要這樣做,請依照下列步驟執行:
在 [工具] 功能表上,選取 [專案設定]。
選取 [類型對應] 索引標籤。
您可以在 [Oracle 中繼資料總管] 中選取資料表,然後變更每一個資料表的類型對應。
轉換結構描述
若要轉換結構描述,請遵循以下步驟:
(選用) 若要轉換動態或臨機操作查詢,請使用滑鼠右鍵按一下節點,然後選取 [新增陳述式]。
選取頂端功能表中的 [連線至 SQL Server]。
- 輸入您位於 Azure VM 上,SQL Server 的連線詳細資料。
- 從清單中選取您的目標資料庫,或提供新的名稱。 若您提供了新的名稱,系統將會在目標伺服器上建立資料庫。
- 提供驗證詳細資料。
- 選取 [連線]。
在 [Oracle 中繼資料總管] 中,用滑鼠右鍵按一下 Oracle 結構描述,然後選取 [轉換結構描述]。 或者,您也可以選取頂端功能表中的 [轉換結構描述]:
結構描述轉換完成之後,請檢查轉換後的物件並將它們與原始物件比較,以找出潛在的問題。 使用這些建議來解決任何發生的問題:
將已轉換的 Transact-SQL 文字與原始預存程序進行比較,並檢閱建議:
您能將專案儲存在本機,以進行離線結構描述補救練習。 若要這樣做,請選取 [檔案] 功能表上的 [儲存專案]。 在本地端儲存專案能讓您離線評估來源及目標結構描述,並執行補救,再將結構描述發佈到 SQL Server。
選取 [輸出] 窗格中的 [檢閱結果],接著檢閱 [錯誤清單] 窗格中的錯誤。
將專案儲存在本機,以進行離線結構描述補救練習。 選取 [檔案] 功能表中的 [儲存專案]。 這讓您有機會離線評估來源及目標結構描述,並執行補救,再將結構描述發佈到 Azure 虛擬機器上的 SQL Server。
遷移
當必要的先決條件準備就緒,並完成與移轉前階段相關聯的工作之後,您就可以開始進行結構描述和資料移轉。 移轉包含兩個步驟:發佈結構描述以及移轉資料。
若要發佈結構描述並移轉資料,請遵循以下步驟:
發佈結構描述:在SQL Server 中繼資料瀏覽器中的資料庫上按一下滑鼠右鍵,然後選取 [與資料庫同步處理]。 這麼做會將 Oracle 結構描述發佈至 Azure 虛擬機器上的 SQL Server。
檢閱來源專案與目標之間的對應:
移轉資料:在 [Oracle 中繼資料總管] 中,用滑鼠右鍵按一下您要移轉的資料庫或物件,然後選取 [移轉資料]。 或者,您也可以選取 [移轉資料] 索引標籤。若要移轉整個資料庫的資料,請選取該資料庫名稱旁的核取方塊。 若要移轉個別資料表中的資料,請依序展開資料庫和 [資料表],然後選取資料表旁的核取方塊。 若要省略個別資料表中的資料,請清除這些核取方塊。
在 Azure 虛擬機器上的對話方塊中,提供 Oracle 和 SQL Server 的連線詳細資料。
在完成移轉之後,請檢視 [資料移轉報告]:
使用 SQL Server Management Studio 來連線到 Azure 虛擬機器執行個體上的 SQL Server。 檢閱資料和結構描述來驗證移轉:
您可以使用 SQL Server Integration Services (SSIS) 來移轉資料,而不是使用 SSMA。 若要深入了解,請參閱:
移轉後
完成移轉階段之後,您需要完成一系列的移轉後工作,以確保所有項目盡可能順暢且有效率地運作。
修復應用程式
將資料移轉至目標環境之後,先前取用來源的所有應用程式都必須開始取用目標。 進行這些變更可能也需要更動應用程式。
Data Access Migration Toolkit是 Visual Studio Code 的延伸模組。 它讓您能分析 JAVA 原始程式碼,以及偵測資料存取 API 呼叫和查詢。 此工具組可提供有關待解決問題的單一窗格檢視,以支援新資料庫後端。 若要深入瞭解,請參閱從 Oracle 移轉您的 JAVA 應用程式。
執行測試
若要測試您的資料庫移轉,請完成下列活動:
開發驗證測試。 若要測試資料庫移轉,則需要使用 SQL 查詢。 建立驗證查詢以針對來源及目標資料庫執行。 您的驗證查詢應該涵蓋定義的範圍。
設定測試環境。 測試環境應該包含來源資料庫及目標資料庫的複本。 請務必隔離測試環境。
執行驗證測試。 對來源及目標執行驗證測試,然後分析結果。
執行效能測試。 對來源及目標執行效能測試,然後分析並比較結果。
驗證移轉的物件
適用於「Oracle 測試器」的 Microsoft SQL Server 移轉小幫手 (SSMA 測試器) 可讓您測試移轉的資料庫物件。 「SSMA 測試器」可用來驗證轉換物件的行為是否相同。
建立測試案例
開啟 SSMA for Oracle,依序選取 [測試器] 和 [新增測試案例]。
在 [測試案例] 精靈中,提供下列資訊:
名稱:輸入用來識別測試案例的名稱。
建立日期:今天的目前日期,由系統自動定義。
上次修改日期:系統自動填寫,不得變更。
描述:輸入任何其他資訊以識別測試案例的用途。
從左側的 Oracle 物件樹狀結構上,選取屬於測試案例的物件。
在此範例中,會選取預存程序
ADD_REGION
和資料表REGION
。若要深入了解,請參閱選取和設定要測試的物件。
接下來,在左側視窗的 Oracle 物件樹狀結構中選取資料表、外部索引鍵和其他相依物件。
若要深入了解,請參閱選取和設定受影響的物件。
檢閱物件的評估順序。 選取方格中的按鈕以變更順序。
檢查先前步驟中提供的資訊以完成測試案例。 根據測試案例,設定測試執行選項。
如需測試案例設定的詳細資訊,請完成測試案例準備
選取 [完成] 以建立測試案例。
執行測試案例
當「SSMA 測試器」執行測試案例時,測試引擎會執行選定要測試的物件,然後產生驗證報告。
從測試存放庫中選取測試案例,然後選取 [執行]。
檢閱啟動測試案例,然後選取 [執行]。
接下來,請提供 Oracle 來源認證。 輸入認證之後,請選取 [連線]。
提供目標 SQL Server 認證,然後選取 [連線]。
成功時,測試案例會移至初始化階段。
即時進度列會顯示測試回合的執行狀態。
測試完成之後,請檢閱報告。 此報告會提供統計資料、測試回合期間所發生的任何錯誤,以及詳細資料報表。
選取 [詳細資料] 以取得詳細資訊。
正面資料驗證範例。
失敗資料驗證範例。
最佳化
移轉後階段對於協調資料精確度問題,以及驗證完整性而言非常重要。 這對於解決工作負載的效能問題也相當重要。
注意
如需這些問題的詳細資訊,及減輕問題的詳細步驟,請參閱移轉後驗證和最佳化指南。
移轉資源
如需完成此移轉案例的詳細說明,請參閱下列資源。這些資源皆是為了支援實際的移轉專案而開發出來的。
標題/連結 | 描述 |
---|---|
資料工作負載評量模型及工具 | 此工具會針對指定的工作負載,提供建議的最適合目標平台、雲端整備,以及應用程式/資料庫補救等級。 提供自動化和統一的目標對平台決策程序,簡單按一下就能計算和報告,有助於加快評估大型資產。 |
Oracle 詳細目錄指令碼成品 | 此資產包含標定 Oracle 系統資料表的 PL/SQL 查詢,並依結構描述類型、物件類型和狀態來提供物件計數。 此外也在每個結構描述中提供原始資料的粗略估計,以及每個結構描述中的資料表大小,並以 CSV 格式儲存這些結果。 |
自動化 SSMA Oracle 評定集合與整合 | 這組資源使用 .csv 檔案 (專案資料夾中的 sources.csv) 作為輸入,產生在主控台模式中執行 SSMA 評量所需的 XML 檔案。 您可以藉由取出現有 Oracle 執行個體的詳細目錄,來提供 source.csv 檔案。 輸出檔案為 AssessmentReportGeneration_source_1.xml、ServersConnectionFile.xml 和 VariableValueFile.xml。 |
移轉 Oracle 資料庫時可能碰到的 SSMA 問題和可能的因應措施 | 使用 Oracle 時,您可以在 WHERE 子句中指派非純量條件。 SQL Server 則不支援這種類型的條件。 因此,適用於 Oracle 的 SSMA 不會在 WHERE 子句中轉換具有非純量條件的查詢。 相對地,它會產生錯誤:O2SS0001。 這份白皮書提供了關於此問題的詳細資料,以及解決的方法。 |
移轉 Oracle 至 SQL Server 操作手冊 | 本文件著重於將 Oracle 結構描述移轉至最新版本 SQL Server 的相關工作上。 如果移轉時需要針對特徵/功能做出更動,您必須仔細考慮對於使用資料庫的應用程式來說,每項變更可能會造成怎麼樣的影響。 |
Oracle 移轉至 SQL Server - 資料庫比較公用程式 | 「SSMA for Oracle 測試器」是自動驗證資料庫物件轉換和資料移轉的建議工具,此工具是資料庫比較功能的超集。 如果您要尋找替代的資料驗證選項,可以使用「資料庫比較」公用程式,將所有或選定資料表、資料列和資料行中的資料,按資料列或資料行層級進行比較。 |
資料 SQL 工程小組開發這些資源。 此小組的核心任務是為資料平台遷移專案的複雜現代化排除障礙,加速遷移至 Microsoft 的 Azure 資料平台。
下一步
若要檢查適用於 SQL Server 的服務可用性,請參閱 Azure 全球基礎結構中心。
如需 Microsoft 及協力廠商服務的矩陣,以及可幫助處理各種資料庫、資料移轉案例和特殊工作的工具,請參閱適用於資料移轉的服務和工具。
若要深入了解 Azure SQL,請參閱:
若要深入了解雲端移轉的架構和採用週期,請參閱:
如需關於授權的詳細資訊,請參閱:
若要評定應用程式存取層,請參閱 Data Access Migration Toolkit 預覽版。
如需如何執行資料存取層 A/B 測試的詳細資訊,請參閱資料庫測試助理概觀。