本文就SQL统计分析SSIS包的部署进行一次详细的部署图解教程,Sql Server Integration Services 提供了非常简单的部署工具,利用这些工具可以方便地将包文件(*.dtsx)、包配置文件(*.dtsconfig)以及包的其它相关文件,打包成一个安装文件,以利于到其它计算机安装与部署。

下面我们以前面介绍的DEPJ1200 为例,来详细介绍包部署的完整过程。

(-)生成安装部署文件。

   在SQL Server Business Intelligence Development Studio的资源管理器中,右击DEPJ1200 -->[属性],打开[ 属性页],在左边的[配置属性]树中,选择[部署实用工具],右边就会显示出[部署实用工具]需要配置的属性,如图:

AllowConfigurationChanges:设定在安装的时候,包配置文件中的属性是否允许修改。True/可修改;False/不可以修改。其安装界面的效果,稍后将会看到。

CreateDeploymentUtility:决定是否创建安装部署文件。

DeploymentOutputPath:设定安装部署文件存放的位置。

按照如图所示设置各属性,点击[确定],返回到主界面。 在[生成]菜单上,单击[生成],就这么简单,安装部署文件就生成了。

我们回到上图设置的部署文件路径,就会看到所有生成的部署文件。

其中,DEPJ1200.SSISDeploymentManifest,就是我们的安装文件了。

(二)包部署。

将上图Deployment 文件夹下的所有文件,Copy 到目标服务器上,双击DEPJ1200.SSISDeploymentManifest,就会弹出包的安装向导,如图:

SSIS包一般有两种部署方式:部署到文件系统和部署到Sql Server。这两种方式,各有特点。部署到文件系统,操作会更简单,配置修改也比较容易。而部署到

Sql Server ,其安全性会更高。在包的执行与调度方面,没有什么差异。此例中,我们选择[部署到文件系统],[下一步] ,如图:

选择配置文件,下面的列表框,将显示配置文件的所有属性。如果在[属性页]界面中,设置AllowConfigurationChanges=true,则这些属性,在此处就可以修改,否则就不可以在此修改,而只有等安装完成后,再到安装文件夹下,对配置文件进行修改了。

[下一步],再单击[确定],部署就完成了。转到安装文件夹,找到SSIS包文件,双击,就可以出现如图所示的运行界面了。

默认情况下,点击[执行]就可以运行了。(左边导航栏每一项的配置,网上的介绍已经很多了,Google、Baidu一下,应用尽有,我这里也就不罗嗦了。)

这种方式,也就是Sql Server Integration Services 提供的一个实用工具“DTExecUI.exe”。除此之外,还用另外一个实用工具“DTExec.exe”,这两个工具,在功能方面完全一样,没有什么 差异,只是前者有UI界面,明确地告诉了你,每一步怎么操作。后者没有UI界面,所有的配置信息,都需要通过命令参数传入,这种方式,比较适合通过 Windows 计划任务、Windows Service、Sql Server Agent 等方式自动执行SSIS包的场景。

下面我们重点介绍Sql Server Agent执行包的详细过程,这也是Microsoft 推荐的一种调度方式,虽然Sql Server Agent Job 大家已经非常熟悉了,但是SSIS包任务的配置,对于新手来说,可能也不是那么容易。

首先,打开Sql Server ,新建作业,如图

 
 输入名称,其它默认就可以了。
选择【步骤】,点击【新建】,如图:(注意,这一步很关键,与其它JOB任务的差异也就在这一步)

[步骤名称]:随意输入。

[类型]:选择“Sql Server Integration Services 包”。

[运行身份]:默认情况下,该下拉列表框中只有一项“Sql Server 代理服务帐户”,选择此项。

在[常规]选项卡下,

[包源]:里面有三种选择:Sql Server 、文件系统,SSIS包存储区,这与前面安装部署时的选择有关系。我们选择[文件系统]。

[包]:选择SSIS 包文件。

[确定],返回到新建作业界面。

配置计划,这个很简单,与其它Job 任务一样,不再累述。

到此为止,一个Sql Server Agent Job 就配置完成了,我们终于可以舒口气了。可是没有想到:黎明前是最黑暗的,噩耗也就此开始。

到达指定时间后,回到Sql Server Agent ,查看Job 运行历史记录,却是“满堂红”啊,如图:

这是为什么呢?通过DTExecui.exe 能成功运行,而通过Sql Server Agent 就不能运行了?
其实原因很简单,就是前面配置的[运行身份]的问题,DTExecui.exe 是以登录当前服务器的用户的身份来运行的,而在sql Server Agent 中,却是以 "Sql Server 代理服务帐户"的身份运行,而SSIS包中,数据库连接的密码,是基于当前机器的登录用户的,当换一个用户的时候,数据库连接字符串中的密码,自然也就不生效了。所以错误提示,Sa 连接失败。
面对这种情况,一般有三种解决办法:
一种是[启用包配置],将数据库连接信息写入配置文件,包无论通过什么用户运行,都会重新加载这个配置文件,问题自然也就解决了。
1.生成config配置文件--http://www.cnblogs.com/WarBlog/p/6553078.html 
2.sqlserver job调用调用config配置文件
2.1.

2.2.添加配置文件

第二种是重新配置Sql Agent Service 的登录帐户,缺省情况下,Sql Server Agent Service 的登录帐户为NetWork Service,我们只要把它修改成登录当前机器的用户就可以了。

第三种解决办法就是添加代理帐户,该代理帐户的安全凭据也指向登录到当前机器的用户。这种方法用的人不多,下面我们详细介绍一下,如何建立代理帐户。
首先,打开Sql Server Management Studio ,在[安全性]节点下,新建用户凭据,如图:

[凭据名称]:Admin Acces(随意输入)。
[标识]:也就是用户标识,选择登录到机器的当前用户就可以了。
输入[密码]和[确认密码],单击[确定],就完成安全凭据的建立。
然后,添加代理帐户。
在Sql Server Management Studio中,找到[Sql Server 代理]-->[代理]节点,右击-->[新建代理],打开[新建代理帐户]对话框,如图:

在常规页面:
[代理名称]:Admin Access proxy(可以随意输入)。
[凭据名称]:Admin Access。就是前面创建的安全性凭据。
[对以下子系统有效]:勾选"Sql Server Integration Services ",如果此代理帐户还需要运行其它子系统,则勾选上列表中的对应项就可以了。
切换到[主体]页面,添加服务器角色,如图:

点击[添加],添加用户角色,如果只要求运行SSIS包的话,只选择如图两种角色就可以了。
单击[确定],Sql Server Agent 代理帐户就建立完成了,这时我们再回到Job 部署界面,在[运行身份]下拉列表框中,就多出一项了,如图:


我们选择刚创建的代理帐户[Admin Access Proxy],点击[确定]。这时再去查看包的运行历史记录,就春意盎然,一遍绿色了。

一步一步部署SSIS包图解教程的更多相关文章

  1. [转]一步一步部署SSIS包图解教程

    本文就SQL统计分析SSIS包的部署进行一次详细的部署图解教程,Sql Server Integration Services 提供了非常简单的部署工具,利用这些工具可以方便地将包文件(*.dtsx) ...

  2. PyCharm虚拟环(Project Interpreter)手动安装第三方包图解教程

    PyCharm虚拟环(Project Interpreter)手动安装第三方包图解教程 an鑫_wolfxin2010 关注 2018.03.13 21:58* 字数 313 阅读 3782评论 1喜 ...

  3. 部署SSIS包完成远程数据更新

    ** 温馨提示:如需转载本文,请注明内容出处.** 本文连接:http://www.cnblogs.com/grom/p/9018978.html 笔者需要定期从服务器更新N家客户的远程服务器数据,上 ...

  4. Sql Server 部署SSIS包完成远程数据传输

    本篇介绍如何使用SSIS和作业完成自动更新目标数据任务. ** 温馨提示:如需转载本文,请注明内容出处.** 本文链接:https://www.cnblogs.com/grom/p/9018978.h ...

  5. SSIS 包部署错误 0xC0010014

    SSIS 包部署错误 0xC0010014 Reinhard 在部署 SSIS 包时,提示如下错误. 由于错误 0xC0010014"发生了一个或多个错误.在此消息之前应有更为具体的错误消息 ...

  6. Linux下安装Nginx详细图解教程

    什么是Nginx? Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下N ...

  7. Linux下安装Nginx详细图解教程 (nginx-1.2.6)

    什么是Nginx? Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下N ...

  8. Linux下安装Nginx详细图解教程(一)

    什么是Nginx? Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下N ...

  9. 图解:SQL Server SSIS包和job的部署攻略

    原文:图解:SQL Server SSIS包和job的部署攻略 以下将建立一个SQL Server SSIS包 然后在job中使用这个包,并将job部署到目标机器 1. 首先建立ssis包,使用sql ...

随机推荐

  1. 负载均衡服务器中存在大量的TIME_WAIT怎么解决

    首先需要明白什么是TIME_WAIT.TIME_WAIT是在tcp断开连接时进行四次回收的时候,主动断开端在收到被动关闭端的FIN包并发送ACK包给被动关闭后进入的状态.这个状态默认情况下是2倍的MS ...

  2. pat03-树2. List Leaves (25)

    03-树2. List Leaves (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue Given a t ...

  3. 图像文字识别(OCR)用什么算法小结

    说明:主要考虑深度学习的方法,传统的方法不在考虑范围之内. 1.文字识别步骤 1.1detection:找到有文字的区域(proposal). 1.2classification:识别区域中的文字. ...

  4. (转载)C#获取当前应用程序所在路径及环境变量

    一.获取当前文件的路径 string str1=Process.GetCurrentProcess().MainModule.FileName;//可获得当前执行的exe的文件名. string st ...

  5. Juniper 防火墙端口映射设置

    首先我们登陆到juniper防火墙控制界面 默认地址大家都知道(192.168.1.1) 默认用户和密码netsscreen 下面介绍登陆界面: 让我们开始配置吧 依次展开policy → Polic ...

  6. django中自定义表名及字段名称

    在meta 类中指定表名,在字段中通过db_column指定列名如下所示 class Record(models.Model): content=models.CharField(max_length ...

  7. 冒泡排序——Java实现

    一.排序思想 比较相邻的元素.如果第一个比第二个大,就交换他们两个. 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应该会是最大的数. 针对所有的元素重复以上的步骤, ...

  8. JavaScirpt(JS)的this细究

    一.js中function的不同形态 js中类和函数都要通过function关键字来构建. 1.js中当函数名大写时,一般是当作类来处理 function Foo(name, age) { this. ...

  9. css 平行四边

    在视觉设计中,平行四边形往往给人一种动感. 要生成一个平行四边形,只要通过css变形,就可做到: -webkit-transform: skewX(-45deg); 那么生成一个平行四边形的按钮呢?列 ...

  10. SharePoint - Templates & Definitions

    1. <ListTemplate>元素的SecurityBits属性 Optional Text. Defines the item-level permissions in the li ...