介绍
如果你已经开发完一个不错的SSIS包并且能够在你的本地完美的运行,每个任务都亮起绿色的通过标志。这时为了能够让这个包处理能够在指定时间运行,你需要将其发布到一个服务器上,并做好相关配置。作为开发人员可能我们不能直接在生产环境去做这个事情,这需要我们有一个开发或者测试环境来完成整个部署测试,因为DBA有时候不会允许你去直接访问生产环境。
本篇将介绍几种从本地到服务器的部署包的方法。SQLServer 2012中引入的项目部署模型不再重复记述了,因为SSIS2012的报部署模型也是用来相似的方法这里会有介绍。
转载请标注出处:http://www.cnblogs.com/wenBlog/
目的
部署的包有以下几种形式:
- 文件系统,包被存储在你选择的文件夹内。
- SSIS包存储,包被保存到SSIS服务管理的一套文件系统表中,位于-%Program Files%\Microsoft SQL Server\100\DTS for SQL Server 2008文件夹下。
- MSDB 数据库,包被存储在dbo.sysssispackages 表中。
接下来我们看一下四种主要的部署方式:
- 传统方式
- 手动方式
- 命令方式
- 实用方式
分别详细描述一下各种方式.
传统方式
使用内置的部署方法来发布包到服务器上:首先,SSISDeploymentManifest(SSIS项目),这是一个用来描述哪些包需要被部署到服务器的基础信息的XML。如果双击项目,一个向导将会协助你发布包到服务器。
按照以下步骤创建即可:
- 右击项目选择属性。在配置属性中,选择部署(Deployment Utility)。设定CreateDeploymentUtility 属性为True。能看到如下图1所示。
右击项目(project ),然后点击生成(Build)。将会创建清单中的内容到配置的文件夹里然后将所有的包复制到文件夹中。
在部署文件中, 默认(.\bin\Deployment),然后双击ISDM文件进入部署向导。
按照部署向导来部署你的文件,
图1
手动方式
对于能够远程控制服务器的人来说(DBA…),可以手动做任何事情:比如手动部署包。
- 使用Management Studio 登陆SSIS服务浏览你打算部署的文件夹。
- 右键文件夹并选择“导入包”。
- 在对话框中指定包的地址,然后点击ok
对于喜欢在BIDS处理的人来说可以如下处理:
- 打开包。在菜单中,找到文件并且选择另存为"Save Copy of [myPackage.dtsx] As" 如下图2所示 。
- Hit OK. 在对话框中选择目的位置,并且选择包需要被部署的位置。点击Ok
图2
命令方式
如果你是那些十分热爱命令行的家伙,那么也可以直接使用命令行部署包。典型的CMD line 如下:
dtutil /FILE “C:\myPackages\myPackage.dtsx” /DestServer myServer /Copy SQL;myPackage
注意:目的包名称中没有.dtsx 扩展名。
使用方式
最后介绍一下我最为喜欢的部署包到服务器的方式(使用BIDS Helper)。一个免费的插件。这个小小的插件引入了大量的功能到BIDS中,其中最为有价值的对于我们来说就是简化部署功能。
- 首先你需要配置部署属性,右击项目然后选择属性(Properties)。在配置属性中,选择部署(Deploy --BIDS Helper),选择你喜欢目标类型,然后配置路径,如图3所示。
- 现在你可以在解决方案浏览器中只是右击包然后选择“部署(Deploy)”来部署一个包了。
图 3
最大的优势就是无论多少个文件都能一次性部署:只需要右键你的项目,然后选择部署。所有的包都会被部署。
总结
这篇随笔简单介绍了几个不同的部署包到服务器的方法,每一个都得到了相同的结果。因此你可以选择一个最为让自己感到舒适的方式来部署。也欢迎有新的方式加入(这里没有介绍TFS、SVN、github部署等)
references:https://msdn.microsoft.com/en-us/library/ms140117%28v=sql.105%29.aspx