SQL Server Integration Services 包的开发与部署初探

说到数据库之间的数据同步,我们经常会结合的SQL Server 2000中的DTS和作业功能来实现按时、按条件的数据传输。但是SQL Server 2005 以后,不再支持SQL Server 2000中的DTS做数据迁移(DTS:Data Transfer Service)。取而代之的是SQL Service Integration Service,缩写为SSIS。开发SSIS包(扩展名为dtsx),完全覆盖了原来DTS的功能,能够更方便的在SQL Server的各版本间传输数据。下面结合一个开发实例,初步探索一下如何在我司的数据库环境中开发、部署SSIS包。

一、            创建包 

一般情况下,Integration Services 包都是在测试或开发服务器上进行开发,然后放到一个或多个实际运行的服务器上进行应用。这意味着需要将来自测试或开发环境的包部署到应用环境中。Integration Services 提供了方便的部署和维护包的工具。

开发SSIS包,你需要使用工具Business Intelligence Development Studio 或 Visual Studio 2005。下面只对Business Intelligence Development Studio进行说明。在安装有SQL Server 2005管理员工具的机器上,运行Business Intelligence Development Studio如下图

 

创建项目时,我们选择“Integration Services 项目”类型,如下图所示 

 

 

接下来我们在项目中新建一个SSIS包,

 

我们可以看到开发环境的工具栏中,有很多类型的任务和控制流项

 

本示例要做的操作是

A、 清空配件图册库(csd)中的作废物料表

B、 把数据库klpdm中的作废物料表复制到配件库(csd)中

C、 调用一个存储过程,完成作废物料代码的替换

我选择使用了两种控制流“执行SQL任务”和“数据流任务”来完成上面三个工作。如下图如示

 


 

二、            包的配置 

在设计界面中,我们可以从上下文菜单选择“包配置”。

 

在“包配置”对话框中, 我们可以新建一个XML格式的配件文件如下图所示

 

我们可以选择一些敏感的属性,配置到XML文件中,一般来说,我会选择,数据库连接的登录名和密码,因为开发、测试和生产环境的这些属性是不同的。

 

最后要注意一点,如果使用的配置文件,请把SSIS包的ProtectionLevel属性设为“DonotSaveSensitive”。因为这样可以方便我们更改属性。如下图

 

 


 

三、            包的安装部署 

要生成一键部署包,必须修改该项目的CreateDeploymentUtility属性为“True”,如下图。

 

这样,我们就可以在生成目录下找到一个Deployment目录了。

 

到生产环境安装时,只要把这个目录复制到要安装的数据库服务器上,然后双击manifest文件,安装向导就自动开始了。

第一步,选择部署到SQL Server

 

第二步,选择要安装到哪个数据库

 

第三步,使用默认安装路径安装

 

第四步,设置XML配置文件的一些重要属性。下面图中只设置了登录密码,在我司的实际环境中,还要设置登录名。


四、            使用作业调用包 

为了定时执行,已经部署的SSIS包,需要在SQL代理服务中创建一个作业,然后在作业的步骤中,设置调用刚刚部署的SSIS包。如下图

 

别忘记在“配置”标签中选择安装目录下的xml配置文件。

 

posted @ 2010-10-12 13:28  快乐的老毛驴  阅读(631)  评论(0编辑  收藏  举报