已经阅读并遵循了有关Microsoft Business Intelligence的教程。我想澄清一些事情。因此,正如我所阅读和实践的,在MSBI中没有像"maven
"或"msbuild
"那样的技术构建过程。我对公用事业更感兴趣,即:dtutil.exe
和dtexec.exe
;这样我就有望实现部署过程的自动化。一些问题:
-
这里的部署更像是在目标服务器/文件系统/存储上移动文件*.dtsx?那么,我的构建编排服务器会从版本控制中签出文件并执行dtutil.exe以移动(也就是部署,在这里)到目标服务器吗?
-
只需手动复制和粘贴,dtutil.exe的移动有什么不同?
-
如果#1是对的,这是否意味着我必须在我的构建服务器上安装SQL server/SSDT,以获得dtutils.exe,或者仅仅从具有.exe的节点复制可执行文件就足够了?
-
对于包的执行,(使用dtutil.exe部署的)我可以通过部署包的远程服务器上的构建服务器来执行吗?
更新:MSSQL 2012;SSDT 2013
SSIS的哪个版本?如果你说的是DTUtil.exe
,那么我猜你指的是2008或SQL 2012包部署(而不是项目部署)
2008年和2012年有很大的不同。
2012年以后,有了一个更加成熟的执行平台。大多数(如果不是全部)功能都是通过SSISDB存储过程实现的,即:https://msdn.microsoft.com/en-us/library/jj820152.aspx
2008年有几个部署选项,但在我看来,部署到msdb(需要DTUtil.exe
)没有任何好处,所以我只需要复制一个文件,部署到运行时文件夹(甚至不需要在SQL Server上,但它使事情变得更简单)。
然后使用DTExec.exe
运行程序包。您可能希望使用/Va
选项作为部署的一部分进行验证。
在过去,我还写了一个文本爬行器,它从包中提取并记录版本号,这样你就可以看到包的版本。