使用 SSDT 儲存封裝的副本至 MSDB

本文將介紹如何使用 SSDT 儲存封裝的副本至 MSDB。

問題描述

在論壇上有朋友問到想要利用 SSDT(SQL Server Data Tools)把舊版的 SSIS 封裝儲存到 MSDB 中,遇到無法使用 SQL Server 驗證的問題,筆者嘗試模擬發問者的問題並嘗試利用下一節的方式來完成這個需求。

實作步驟

首先使用 SSDT 開啟您的 SSIS 專案,為簡化示範的複雜度,筆者在專案中只放一個封裝(如下圖),預設 SSDT 建立的 SSIS 專案為專案部署模型,若您是從舊版升級專案類型會是封裝部署模型,這兩種模型在功能上會稍有不同。

image

於方案總管中您的 SSIS 專案上按滑鼠右鍵,選擇【轉換為封裝部署模型】。

image

接著 SSDT 會提示您將專案部署模型轉換為封裝部署模型會失去某些專案部署模型特有的功能,若您會使用到這些功能請勿進行轉換,在此請按【確定】以完成轉換。

image

轉換過程中 SSDT 會檢查您的專案及封裝的相容性,若沒問題您將看到如下圖的結果,請按確定來關閉【轉換為封裝部署模型】視窗。

image

在方案總管中您就可以看到您的專案名稱後方多了【封裝部署模型】這幾個字。

image

然後請開啟您要儲存複本至 MSDB 的封裝,因為要儲存副本前必須先將該封裝打開,接著於功能表中選擇【檔案 > 另存<封裝名稱>的副本為】。

image

於【儲存封裝的副本】視窗中選擇封裝位置為 SQL Server,以及相關的伺服器及驗證資訊和封裝路徑,最後按確定。

image

副本儲存成功後您可以在 SSMS 的物件總管中,連接到 SSIS 伺服器,就可看到剛剛透過 SSDT 儲存的副本。

image

您也可以查詢 sysssispackages 系統資料表來封裝是否儲存到 MSDB,例如下列的 T-SQL 指令碼:


SELECT *
FROM [msdb].[dbo].[sysssispackages]

執行結果如下:

image

參考資料

- 儲存封裝的副本

- 儲存封裝的複本

- 在 SQL Server Data Tools 中複製封裝