共用方式為


移轉指南:Oracle 到 Azure SQL 資料庫

適用於:Azure SQL 資料庫

本指南會教導您使用適用於 Oracle 的 SQL Server 移轉小幫手 (SSMA) 將 Oracle 架構遷移至 Azure SQL 資料庫。

如需其他移轉指南,請參閱 Azure 資料庫移轉指南

重要

請嘗試 Oracle 的資料庫移轉評估,以將 Oracle 擴充>功能移至 Azure SQL 預先評定和工作負載分類。 此延伸模組很有用:

  • 如果您處於 Oracle 移轉至 Azure SQL 的初期階段,且需要進行高階工作負載評估
  • 如果您想要調整 Oracle 工作負載的 Azure SQL 目標大小
  • 如果您想要瞭解功能移轉同位

如需詳細的程式碼評定和轉換,請繼續使用 SSMA for Oracle。

必要條件

在開始將 Oracle 結構描述移轉至 SQL Database 之前:

移轉前

符合必要條件之後,您就可以探索環境的拓撲,並評估 Azure 雲端移轉的可行性。 這部分的程序牽涉到清查您需要移轉的資料庫、評估這些資料庫是否有潛在的移轉問題或阻礙,然後解決您已發現的任何問題。

評定

使用 SSMA for Oracle,您可以查看資料庫物件和資料、評估要移轉的資料庫、將資料庫物件移轉至 SQL Database,最後將資料移轉至資料庫。

若要建立評量:

  1. 開啟 SSMA for Oracle

  2. 選取 [檔案],然後選取 [新增專案]。

  3. 輸入專案名稱和儲存專案的位置。 然後從下拉式清單中選取 [Azure SQL 資料庫] 作為移轉目標,然後選取 [確定]。

    螢幕擷取畫面:[連接至 Oracle]。

  4. 選取 [連線到 Oracle]。 在 [連線到 Oracle] 對話方塊中,輸入 Oracle 連線詳細資料所需的值。

  5. 選取您要移轉的 Oracle 結構描述。

    螢幕擷取畫面:選取 Oracle 結構描述。

  6. 在 [Oracle 中繼資料總管] 中,用滑鼠右鍵按一下您要移轉的 Oracle 結構描述,然後選取 [建立報告] 以產生 HTML 報告。 您也可以選取資料庫,然後選取 [建立報告] 索引標籤。

    螢幕擷取畫面:[建立報告]。

  7. 請檢閱 HTML 報表,以了解轉換統計資料以及任何錯誤或警告。 您也可以在 Excel 中開啟報告,以取得 Oracle 物件的詳細目錄,以及執行結構描述轉換所需的工作。 報表其預設位置是在 SSMAProjects 內的報表資料夾中。

    如需範例,請參閱 drive:\<username>\Documents\SSMAProjects\MyOracleMigration\report\report_2020_11_12T02_47_55\

    螢幕擷取畫面:評定報告。

驗證資料類型

驗證預設資料類型對應,並視需要來根據需求加以變更。 若要這樣做,請依照下列步驟執行:

  1. 在 SSMA for Oracle 中,選取 [工具],然後選取 [專案設定]。

  2. 選取 [類型對應] 索引標籤。

    螢幕擷取畫面:[類型對應]。

  3. 您可以在 [Oracle 中繼資料總管] 中選取資料表,然後變更每一個資料表的類型對應。

轉換結構描述

若要轉換結構描述:

  1. (選擇性) 將動態或臨機操作查詢新增至陳述式。 以滑鼠右鍵按一下節點,然後選取 [新增陳述式]。

  2. 選取 [連線到 Azure SQL Database] 索引標籤。

    1. SQL Database 中輸入連線詳細資料,以連線至您的資料庫。

    2. 從下拉式清單中選取您的目標 SQL 資料庫 實例,或輸入新的名稱,在此情況下,將會在目標伺服器上建立資料庫。

    3. 輸入驗證詳細資料,然後選取 [連線]。

    螢幕擷取畫面:[Connect to Azure SQL Database] \(連線至 Azure SQL Database)\。

  3. 在 [Oracle 中繼資料總管] 中,用滑鼠右鍵按一下 Oracle 結構描述,然後選取 [轉換結構描述]。 或者,您也可以選取您的結構描述,然後選取 [轉換結構描述] 索引標籤。

    螢幕擷取畫面:[轉換結構描述]。

  4. 轉換完成後,請檢閱轉換的物件並與起始物件進行比較,以找出潛在問題,並根據建議來解決問題。

    螢幕擷取畫面:[檢閱建議] 結構描述。

  5. 將已轉換的 Transact-SQL 與原始預存程序進行比較,並檢閱建議。

    螢幕擷取畫面:[檢閱建議]。

  6. 在 [輸出] 窗格中,選取 [檢閱結果],並檢閱 [錯誤清單] 窗格中的錯誤。

  7. 將專案儲存在本機,以進行離線結構描述補救練習。 在 [檔案] 功能表中,選取 [儲存專案]。 此步驟讓您有機會離線評估來源及目標結構描述,並執行補救,再將其發佈到 SQL Database。

移轉

評估資料庫並解決任何差異之後,下一個步驟是執行移轉程式。 移轉需要執行兩個步驟:發佈結構描述和移轉資料。

若要發佈您的結構描述並移轉資料:

  1. 在 [Azure SQL Database 中繼資料總管] 中,用滑鼠右鍵按一下 [資料庫] 節點上的資料庫,然後選取 [與資料庫同步處理],即可發佈結構描述。

    螢幕擷取畫面:[與資料庫同步處理]。

  2. 檢閱來源專案與目標之間的對應。

    螢幕擷取畫面:[與資料庫同步處理] 檢閱。

  3. 在 [Oracle 中繼資料總管] 中,用滑鼠右鍵按一下您要移轉的資料庫或物件,然後選取 [移轉資料],即可移轉資料。 或者,您也可以選取 [移轉資料] 索引標籤。若要移轉整個資料庫的資料,請選取該資料庫名稱旁的核取方塊。 若要移轉個別資料表中的資料,請依序展開資料庫和 [資料表],然後選取資料表旁的核取方塊。 若要省略個別資料表中的資料,請清除這些核取方塊。

    螢幕擷取畫面:[移轉資料]。

  4. 輸入 Oracle 和 SQL Database 的連線詳細資料。

  5. 完成移轉之後,請檢視 [資料移轉報告]。

    螢幕擷取畫面:[Data Migration Report] \(資料移轉報告\)。

  6. 使用下載 SQL Server Management Studio (SSMS)連線到您的 SQL 資料庫 實例,並檢閱數據和架構來驗證移轉。

    螢幕擷取畫面:SQL Server Management Studio 中的驗證。

或者,您也可以使用 SQL Server Integration Services 來執行移轉。 若要深入了解,請參閱:

移轉後

成功完成移轉階段之後,您需要完成一系列的移轉後工作,以確保所有項目盡可能順暢且有效率地運作。

修復應用程式

將資料移轉至目標環境之後,先前取用來源的所有應用程式都必須開始取用目標。 在某些情況下,完成這項工作需要變更應用程式。

Data Access Migration Toolkit 是 Visual Studio Code 的延伸模組,可讓您分析 Java 原始程式碼,以及偵測資料存取 API 呼叫和查詢。 此工具組讓您可以在單一窗格中檢視支援新資料庫後端必須解決的問題。 若要深入了解,請參閱從 Oracle 移轉您的 Java 應用程式部落格文章。

執行測試

資料庫移轉的測試方法包含下列活動:

  1. 開發驗證測試:若要測試資料庫移轉,您需要使用 SQL 查詢。 您必須建立驗證查詢,以針對來源及目標資料庫執行。 您的驗證查詢應涵蓋您定義的範圍。

  2. 設定測試環境:測試環境應該包含來源資料庫及目標資料庫的複本。 請務必隔離測試環境。

  3. 執行驗證測試:對來源及目標執行驗證測試,然後分析結果。

  4. 執行效能測試:對來源及目標執行效能測試,然後分析並比較結果。

驗證移轉的物件

適用於「Oracle 測試器」的 Microsoft SQL Server 移轉小幫手 (SSMA 測試器) 可讓您測試移轉的資料庫物件。 「SSMA 測試器」可用來驗證轉換物件的行為是否相同。

建立測試案例

  1. 在 SSMA for Oracle 中,流覽至測試人員>新的測試案例。

    螢幕擷取畫面:建立新測試案例。

  2. 請提供新測試案例的下列資訊:

    名稱:輸入用來識別測試案例的名稱。

    建立日期:今天的目前日期,由系統自動定義。

    上次修改日期: 此值會自動填入,不應變更。

    描述:輸入任何其他資訊以識別測試案例的用途。

    螢幕擷取畫面:將測試案例初始化的步驟。

  3. 從左側的 Oracle 物件樹狀結構中,選取屬於測試案例的物件。

    螢幕擷取畫面:選取及設定物件的步驟。

    在這裡範例中,會選擇預存程式 ADD_REGION、 和資料表 REGION

    若要深入瞭解,請參閱 選取和設定要測試的物件 (OracleToSQL)

  4. 接下來,在左側視窗的 Oracle 物件樹狀結構中選取資料表、外部索引鍵和其他相依物件。

    螢幕擷取畫面:選取及設定受影響物件的步驟。

    若要深入瞭解,請參閱 選取和設定受影響的物件 (OracleToSQL)

  5. 檢閱物件的評估順序。 選取方格中的按鈕以變更順序。

    螢幕擷取畫面:排序測試物件執行的步驟。

  6. 檢查先前步驟中提供的資訊以完成測試案例。 根據測試案例,設定測試執行選項。

    螢幕擷取畫面:完成物件的步驟。

    如需測試案例設定的詳細資訊,請完成測試案例準備 (OracleToSQL)

  7. 選取 [完成] 以建立測試案例。

    螢幕擷取畫面:測試存放庫的步驟。

執行測試案例

當「SSMA 測試器」執行測試案例時,測試引擎會執行選定要測試的物件,然後產生驗證報告。

  1. 從測試存放庫中選取測試案例,然後選取 [執行]。

    螢幕擷取畫面:檢閱測試存放庫。

  2. 檢閱啟動測試案例,然後選取 [執行]。

    顯示執行測試案例步驟的螢幕快照。

  3. 接下來,請提供 Oracle 來源認證。 輸入認證之後,請選取 [連線]。

    螢幕擷取畫面:連線至 Oracle 來源的步驟。

  4. 提供目標 SQL Server 認證,然後選取 [連線]。

    螢幕擷取畫面:連線至 SQL 目標的步驟。

    成功時,測試案例會移至初始化階段。

  5. 即時進度列會顯示測試回合的執行狀態。

    螢幕擷取畫面:測試人員測試進度。

  6. 測試完成之後,請檢閱報告。 此報告會提供統計資料、測試回合期間所發生的任何錯誤,以及詳細資料報表。

    顯示範例測試人員測試報告的螢幕快照。

  7. 選取 [詳細資料] 以取得詳細資訊。

    正面資料驗證範例。

    螢幕擷取畫面:範例測試人員成功報告。

    失敗資料驗證範例。

    螢幕擷取畫面:測試人員失敗報告。

最佳化

移轉後階段對於協調任何資料精確度問題、驗證完整性以及解決工作負載的效能問題而言至關重要。

如需這些問題的詳細資訊及減輕問題的步驟,請參閱移轉後驗證和最佳化指南

移轉資產

如需獲得更多協助來完成此遷移,請參閱下列資源。 這些都是為了支援實際遷移專案活動而開發。

  • 資料工作負載評量模型及工具

    此工具為指定的工作負載,提供建議的「最適合」目標平台、雲端整備,以及應用程式或資料庫補救等級。 它提供簡單的計算和報告產生,藉由提供自動化且統一的目標平臺決策程序,協助加速大型資產評估。

  • Oracle 詳細目錄指令碼成品

    此資產包含叫用 Oracle 系統資料表的 PL/SQL 查詢,並依結構描述類型、物件類型和狀態提供物件計數。 此外也在每個結構描述中提供原始資料的粗略估計,以及每個結構描述中的資料表大小,並以 CSV 格式儲存這些結果。

  • 自動化 SSMA Oracle 評定集合與整合

    這組資源會使用.csv檔案作為專案(專案資料夾中的sources.csv),以產生主控台模式中執行 SSMA 評估所需的 XML 檔案。 source.csv 是由客戶依據現有 Oracle 執行個體的詳細目錄提供。 輸出檔案為 AssessmentReportGeneration_source_1.xmlServersConnectionFile.xmlVariableValueFile.xml

  • 將 Oracle 移轉至 SQL DB - 資料庫比較公用程式

    「SSMA for Oracle 測試器」是自動驗證資料庫物件轉換和資料移轉的建議工具,此工具是資料庫比較功能的超集。

    如果您要尋找替代的數據驗證選項,您可以使用 資料庫比較 公用程式,將數據與所有數據列或數據行的層級進行比較,以及所有或選取的數據表、數據列和數據行。

資料 SQL 工程小組開發這些資源。 此小組的核心任務是為資料平台遷移專案的複雜現代化排除障礙,加速遷移至 Microsoft 的 Azure 資料平台。