升級 Integration Services 封裝

適用於:SQL Server Azure Data Factory 中的 SSIS Integration Runtime

當您將 SQL Server 2008 (10.0.x) 執行個體升級為目前的 SQL Server 版本時,現有的 SQL Server 2008 Integration Services (SSIS) 封裝不會自動升級為目前版本之 SQL Server Integration Services 所用的封裝格式。 您必須選取升級方法並手動升級您的封裝。

如需將專案轉換為專案部署模型時升級套件的相關資訊,請參閱部署 Integration Services (SSIS) 專案和套件

選取升級方法

您有多種不同的方法可以升級 SQL Server 2008 (10.0.x)”SQL Server 2008 R2 (10.50.x)、SQL Server 2012 (11.x) 或 SQL Server 2014 (12.x) 封裝。 對於其中某些方法而言,升級只是暫時性。 對於其他方法而言,升級則是永久性。 下表將描述每種方法以及升級是暫時性或永久性。

注意

當您使用隨目前版本之 SQL Server 一起安裝的 dtexec (dtexec.exe) 公用程式,執行 SQL Server 2008 (10.0.x) 時,SQL Server 2008 R2 (10.50.x)、SQL Server 2012 (11.x) 或 SQL Server 2014 (12.x) 封裝時,封裝暫時升級會增加執行時間. 所增加的封裝執行時間長短,取決於封裝的大小。 如要避免執行時間增加,建議您在執行前先升級封裝。

注意

升級流程不會處理參考繫結版本之 SSIS 相關元件的指令碼元件,並會保持不變。 必須手動更新為參考新版本。

升級方法 升級的類型
使用隨目前版本化 SQL Server 一起安裝的dtexec (dtexec.exe) 公用程式,執行 SQL Server 2008 (10.0.x)、SQL Server 2008 R2 (10.50.x)、SQL Server 2012 (11.x) 或 SQL Server 2014 (12.x) 封裝。

如需詳細資訊,請參閱 dtexec Utility
封裝升級是暫時性的。

這些變更無法儲存。
在 SQL Server Data Tools (SSDT) 中,開啟 SQL Server 2008 (10.0.x)、SQL Server 2008 R2 (10.50.x)、SQL Server 2012 (11.x) 或 SQL Server 2014 (12.x) 封裝檔案。 如果您儲存了封裝,封裝升級就是永久性。不過,如果您沒有儲存封裝,封裝升級就是暫時性。
在 SQL Server Data Tools (SSDT) 中,將 SQL Server 2008 (10.0.x)、SQL Server 2008 R2 (10.50.x)、SQL Server 2012 (11.x) 或 SQL Server 2014 (12.x) 封裝新增到現有的專案。 封裝升級是永久性的。
在 Visual Studio 中開啟 Open a SQL Server 2008 Integration Services (SSIS) 或更新版本的專案檔,然後使用 [SSIS 封裝升級精靈],升級專案中的多個封裝。

如需詳細資訊,請參閱 使用 SSIS 封裝升級精靈來升級 Integration Services 封裝SSIS 封裝升級精靈 F1 說明
封裝升級是永久性的。
使用 Upgrade 方法升級一或多個 Integration Services 封裝。 封裝升級是永久性的。

自訂應用程式和自訂元件

SQL Server 2005 Integration Services (SSIS) 自訂群組件不適用於目前的 SQL Server Integration Services 版本。

您可以使用目前版本的 SQL Server Integration Services 工具,執行及管理包含 SQL Server 2008 (10.0.x)、SQL Server 2008 R2 (10.50.x)、SQL Server 2012 (11.x) 或 SQL Server 2014 (12.x) SSIS 自訂元件的封裝。 我們為下列檔案新增了四個繫結重新導向規則,協助將 10.0.0.0 版 (SQL Server 2008 R2 (10.50.x))、11.0.0.0 版 (SQL Server 2012 (11.x)) 或 12.0.0.0 版 (SQL Server 2014 (12.x)) 的執行階段組件,重新導向至 15.0.0.0 版 (SQL Server 2019 (15.x))。

  • DTExec.exe.config

  • dtshost.exe.config

  • DTSWizard.exe.config

  • DTUtil.exe.config

  • DTExecUI.exe.config

若要使用 SQL Server Data Tools 設計包含 2008 SQL Server 2008 (10.0.x)、SQL Server 2008 R2 (10.50.x)、SQL Server 2012 (11.x) 或 SQL Server 2014 (12.x) 自訂元件的封裝,必須修改位於<磁碟機>\Program Files\Microsoft Visual Studio 10.0\Common7\IDE 的 devenv.exe.config 檔案。

若要搭配這些封裝與採用 SQL Server 2019 (15.x) 執行階段建置的客戶應用程式,請在可執檔的 *.exe.config 檔案的設定區段中,加入重新導向規則。 這些規則會將執行階段組件重新導向至 15.0.0.0 (SQL Server 2019 (15.x))。 如需重新導向組件版本向的詳細資訊,請參閱 <runtime> 的 <assemblyBinding> 元素

尋找組件

在 SQL Server 2019 (15.x) 中,Integration Services 組件已升級為 .NET 4.0。 .NET 4 有個別的全域組件快取,位於 <磁碟機>:\Windows\Microsoft.NET\assembly。 您可以在此路徑下 (通常在 GAC_MSIL 資料夾中) 找到所有 Integration Services 組件。

一如舊版的 SQL Server,核心 Integration Services 的擴充功能 .dll 檔案,也位於<磁碟機>:\Program Files\Microsoft SQL Server\130\SDK\Assemblies 中。

了解 SQL Server 封裝升級結果

封裝升級流程執行期間,SQL Server 2008 (10.0.x)、SQL Server 2008 R2 (10.50.x)、SQL Server 2012 (11.x) 或 SQL Server 2014 (12.x) 封裝中的大部分元件和功能,都會無縫轉換成其在目前版本之 SQL Server 中的對應項目。 不過,其中有許多元件和功能不會升級,或者具有您應該注意的升級結果。 下表將識別這些元件和功能。

注意

若要識別哪些封裝具有下表所列的問題,請執行 Upgrade Advisor。

元件或功能 升級結果
連接字串 對於 SQL Server 2008 (10.0.x)、SQL Server 2008 R2 (10.50.x)、SQL Server 2012 (11.x) 或 SQL Server 2014 (12.x) 封裝,有些提供者的名稱已變更,需要在連接字串中設定不同的值。 若要更新連接字串,請使用下列其中一個程序:

使用 [SSIS 封裝升級精靈] 升級封裝,然後選取 [更新連接字串以使用新的提供者名稱] 選項。

在 SQL Server Data Tools (SSDT) 之 [選項] 對話方塊的 [一般] 頁面上,選取 [更新連接字串以使用新的提供者名稱] 選項。 如需這個選項的詳細資訊,請參閱 [一般] 頁面。

在 SQL Server Data Tools (SSDT) 中開啟封裝,然後手動變更 ConnectionString 屬性的文字。

注意:當連接字串儲存在組態檔或資料來源檔案中,或者運算式設定 ConnectionString 屬性時,您無法使用先前的程序來更新連接字串。 在這些情況下,若要更新連接字串,您必須手動更新檔案或運算式。

如需資料來源的詳細資訊,請參閱 資料來源

以 ADODB.dll 為基礎的指令碼

直接參考 ADODB.dll 的「指令碼工作」和「指令碼元件」指令碼,可能無法升級或無法在未安裝 Management Studio 或 SQL Server Data Tools (SSDT) 的電腦上執行。 為了升級這些指令碼工作或指令碼元件指令碼,建議您移除 ADODB.dll 的相依性。 建議以 Ado.Net 來替代 Managed 程式碼 (例如 VB 和 C# 指令碼)。