好的,經過幾次測試,我想我已經弄清楚它是如何在清單部署中起作用的。
當您單擊清單文件時,它將要求部署目標。
您可以選擇遠程SQL服務器,沒問題,SSIS包將被部署到數據庫中(默認情況下在master,msdb.dbo.sysssispackages下,除非遠程SQL服務器中的MsDtsSrvr.ini.xml文件是改性)。
但是,如果您的SSIS包使用任何dtsconfig文件,清單部署有點傻。
首先,它試圖通過詢問你一個新的系統文件路徑來將你的本地dtsconfig文件複製過來。是的,即使您選擇將SSIS包部署到數據庫,dtsconfig文件也不會與您的SSIS包一起存儲。它必須存儲在系統文件目錄下。我的默認值是C:\ Program Files(x86)\ Microsoft SQL Server \ 100 \ DTS \ Packages [源文件夾名稱]。
清單部署很智能,因爲將SSIS包配置爲使用任何路徑(本地或遠程)的dtsconfig文件,它可以通過將舊路徑替換爲您剛剛指定的這個新路徑來更新您的SSIS包。但它不那麼聰明,因爲如果使用默認的(即C:\ Program Files文件(x86)\ Microsoft SQL Server \ 100 \ DTS \ Packages \ MySSISProject),則此路徑代表您的C:\,而不是C:\ in遠程SQL服務器(即使您已指定在第一步中將其部署到遠程SQL服務器上)。但與此同時,部署在遠程SQL服務器中的SSIS包正在更新爲此文件路徑,該文件路徑實際上指向C:\ IN THE REMOTE SQL服務器...
最後,您將不得不使用遠程桌面將您的dtsconfig文件複製到遠程SQL Server系統文件目錄。
通常在使用清單文件部署任何paackage時。 dtsconfig文件從部署它的文件系統路徑中使用。嘗試從文件系統中刪除dtsconfig並運行包。 – Pratik
通常使用SQL代理作業運行這些SSIS包。在配置此作業時,可以選擇一個包以及.dtsconfig文件。該軟件包可以來自SQl Server msdb,但.dtsconfig可以位於文件存儲區(通常位於SQL Server本地文件夾或UNC上)。 – user1826905