2016-11-22 61 views
0

摘要:「主」數據庫包含一組連接字符串。 A .dtsConfig XML文件用於將包指向此數據庫。通過在連接上使用包變量和表達式來完成動態連接分配。在開發環境中完美地工作,但一旦部署到現場,它就會崩潰。SQL Server 2014,SSDT:將.dtsx包部署到現場,連接管理器和變量出現問題

我在將.dtsx軟件包部署到生產環境時目前遇到問題。這個問題與作業運行時的連接管理器具體相關。作爲原因,歷史日誌報告... network ...錯誤和Login timeout錯誤。

(僅供參考,我使用Visual Studio 2013和SQL Server數據工具)

  1. 我有保存,它需要處理的連接字符串主數據庫中的表。

  2. 的包檢查一個配置文件,使它們指向數據庫如(1)的規定。

  3. 連接被檢索並被放置在一個對象變量中。

  4. 該變量映射到一個foreach循環容器,其中一組連接字符串變量映射到相關列。

  5. 然後軟件包正常進行。

一些注意事項:

  1. 當我做開發,我的連接字符串我的網絡上提供的默認值。

  2. 我已經檢查了數據庫中連接字符串參數和格式,它們符合微軟的規範。

  3. 我們的實施者客戶的QA服務器,我改變了連接變量指向他們的網絡上安裝SSDT。這解決了問題,但它不可持續(至少在我看來)。

所以我的問題是:我怎麼得到我的生產部署與動態連接管理分配正常工作,而無需改變在每個客戶端基礎的每個包裝內的連接字符串變量?

任何幫助將不勝感激。

回答

0

通過提出大量的問題,DuckDuckGo做更多的研究後,我終於得到了我的答案here

從上面的博客引述:

我有一組使用上面列出的第三個選項我的客戶端運行的SSIS包。這些軟件包工作良好,直到一天失敗。日誌顯示軟件包驗證失敗,並且我發現所有軟件包都有其連接管理器'DelayValidation屬性設置爲False。用於設置連接字符串的變量具有指向DEV服務器的默認值。生產過程中的這些軟件包實際上是在嘗試對DEV數據庫進行驗證,儘管連接字符串是通過變量動態設置的以指向PROD。這是非常危險的,因爲如果DEV服務器關閉,作業將無法運行,這正是發生的情況。