2017-01-09 112 views
1

已閱讀並遵循Microsoft Business Intelligence的教程。我想澄清一些事情。所以,正如我已經閱讀和練習的那樣,在MSBI中沒有像'maven'或'msbuild'那樣的技術構建過程。我更感興趣的公用事業,即:dtutil.exedtexec.exe;這樣我可以希望自動執行部署過程。一些問題:SSIS部署和執行

  1. 這裏部署更多的是將文件* .dtsx移動到目標服務器/文件系統/存儲上?那麼,我的內部編排服務器會檢查版本控制中的文件,並執行dtutil.exe將(此處也稱爲deploy)移動到目標服務器上?

  2. 與dtutil.exe一起使用只是手動複製和粘貼有什麼區別?

  3. 如果#1是正確的,是否意味着我必須在我的構建服務器上安裝SQL服務器/ SSDT,以獲取dtutils.exe或從具有.exe的節點複製可執行文件將是很好的足夠?

  4. 對於執行包(使用dtutil.exe進行部署),我可以通過我的構建服務器在部署包的遠程服務器上執行它?

更新: MSSQL 2012; SSDT 2013

+0

您正在使用哪個版本的TFS?你使用xaml構建還是新建構建系統?在新的構建系統中,指定要在命令行任務中運行的工具很容易,請查看:https://www.visualstudio.com/en-us/docs/build/steps/utility/command-line –

回答

2

什麼版本的SSIS?如果你在談論DTUtil.exe那麼我想你的意思是2008年 SQL 2012軟件包部署(未項目部署)

有2008年和2012年

之間有很大的區別。在2012年開始有一個比較成熟的執行平臺。如果不是所有功能都通過SSISDB實現存儲過程,也就是這樣的:https://msdn.microsoft.com/en-us/library/jj820152.aspx

有08年,但我的腦海裏一對夫婦的部署選項有部署到MSDB(需要DTUtil.exe)沒有好處,所以我只是做一個文件副本部署到運行時文件夾(甚至不需要在SQL Server上,但它使事情變得更簡單)。

然後您使用DTExec.exe來運行該軟件包。您可能希望使用/Va選項作爲部署的一部分進行驗證。

在過去,我還編寫了一個文本搜尋器,用於從包中取出並記錄版本號,以便您可以查看包版本。

+0

我認爲SP的部署方式適用於項目部署模型,不適用於包部署。 https://msdn.microsoft.com/en-us/library/bea8ce8d-cf63-4257-840a-fc9adceade8c(v=sql.110)..我加入的新團隊正在使用packge部署模型。有什麼想法嗎? – OK999

+0

因此,您正在使用SQL 2012包部署。這與SQL 2008非常相似。他們是否堅持使用軟件包部署是有原因的 - 項目部署有很多好處,沒有太多的缺點。 –

+0

關於SQL 2012包部署,他們是從文件系統運行.dtsx還是使用msdb。有許多不同的部署和運行時選項,您需要爲此調整您的部署。 –