文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>一步一步部署SSIS包图解教程

一步一步部署SSIS包图解教程

时间:2010-12-25  来源:bany

下面我们重点介绍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 连接失败。
  面对这种情况,一般有三种解决办法:
  一种是[启用包配置],将数据库连接信息写入配置文件,包无论通过什么用户运行,都会重新加载这个配置文件,问题自然也就解决了。
  第二种是重新配置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],点击[确定]。这时再去查看包的运行历史记录,就春意盎然,一遍绿色了。

相关阅读 更多 +
排行榜 更多 +
打螺丝高手

打螺丝高手

模拟经营 下载
解救火柴人计划安卓版

解救火柴人计划安卓版

体育竞技 下载
鸡生化精英安卓版

鸡生化精英安卓版

飞行射击 下载